@charset "UTF-8";

#strengths main {
  color: #594A4E;
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {
#strengths .seo_bread_list {
	background: #FFFFFE;
	margin-block: 0 -38px;
}

.p-fv {
	background: #FFFFFE;
}

.p-fv .l-inner.l-fv {
	padding-block: 0 0px;
}

.p-fv .p-fv__contents {
	align-items: center;
	display: grid;
	gap: 0 35px;
	grid-template-columns: 504px 695px;
	justify-content: center;
	position: relative;
	left: 92px;
}

.p-fv .p-fv__contents-left h2 {
	font-size: 40px;
	font-size: clamp(1.75rem, 1.25rem + 1.04vw, 2.5rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: 24px;
	color: #33272A;
}

.p-fv .p-fv__contents-left h2 span {
	font-size: 48px;
  font-size: clamp(2rem, 1.333rem + 1.39vw, 3rem);
	font-weight: 700;
	letter-spacing: 0.015em;
	line-height: 1.5;
}

.p-fv .p-fv__contents-left h2 span.pink {
	color: #E3899F;
}

.p-fv .p-fv__contents-left p {
	font-size: 16px;
  font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	-webkit-text-decoration-line: underline;
	text-decoration-line: underline;
	-webkit-text-decoration-style: dotted;
	text-decoration-style: dotted;
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: 1px; /* 6.25% */
	text-underline-offset: 25%; /* 4px */
	text-underline-position: from-font;
  color: #594A4E;
}

.p-fv .p-fv__contents-right {
  position: relative;
  top: -17px;
}

.p-reason {
	padding-block: 158px 240px;
	position: relative;
	color: #594A4E;
}

.p-reason:before {
	background: url(../images/strengths/reason_bg.png) no-repeat top center/contain;
	content: "";
	height: 200px;
	left: 50%;
	margin-inline: auto;
	max-width: 1920px;
	position: absolute;
	top: -41px;
	transform: translateX(-50%);
	width: 100%;
	width: 100%;
}

.p-reason .l-inner.l-reason {
	position: relative;
  background: #F9F2F1;
}

.p-reason .p-reason__img01 {
	position: absolute;
	right: 0;
	top: 46px;
}

.p-reason .p-reason__img01 img {
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-reason .p-reason__img02 {
	top: 511px;
	left: 54px;
	position: absolute;
}

.p-reason .p-reason__img03 {
	bottom: 563px;
	left: 49px;
	position: absolute;
}

.p-reason .p-reason__con {
  position: relative;
  z-index: 10;
}

.p-reason .p-reason__contents {
	display: grid;
	gap: 0 27px;
	grid-template-columns: 512px 507px;
	justify-content: center;
	margin-bottom: 120px;
	width: min(85%,1051px);
	margin-inline: auto;
	align-items: center;
}

.p-reason .p-reason__contents.reverse {
	grid-template-columns: 507px 512px;
	gap: 0 32px;
	margin-bottom: 121px;
}

.p-reason .p-reason__contents.reverse .p-reason__contents-left {
	order: 2;
}

.p-reason .p-reason__contents.reverse .p-reason__contents-right {
	order: 1;
}

.p-reason .p-reason__contents .p-reason__contents-right h3 {
	font-size: 20px;
  font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 32px;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt {
  margin-bottom: 32px;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt p {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	margin-bottom: 14px;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt p.bottom {
	margin-bottom: 0;
}

.c-sec__en {
	font-size: 16px;
	text-align: center;
	color: #3B4E71;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 8px;
}

.c-sec__ttl {
	font-size: 28px;
  font-size: clamp(1.5rem, 1.333rem + 0.35vw, 1.75rem);
	text-align: center;
	color: #3B4E71;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5357142857;
	margin-bottom: 37px;
}

.c-sec__btn {
}

.c-sec__btn a {
  display: block;
  font-size: 16px;
  font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.48px;
  border-radius: 999px;
  border:1px solid #33272A;
  background: #FFFFFE;
  width: fit-content;
  margin-left: auto;
  padding-block: 12px;
  padding-inline: 29px 45px;
  position: relative;
  color: #33272A;
}

.c-sec__btn a::after {
  position: absolute;
  content: "";
  background: url(../images/strengths/btn_arrow.svg) no-repeat center center / contain;
  width: 5px;
  height: 9px;
  right: 28px;
  top: 50%;
  transform: translateY(-50%);
}

.p-link {
	background: #FFFFFE;
	position: relative;
}

.p-link:before {
	background: url(../images/strengths/link_bg.png) no-repeat top center/auto;
	content: "";
	height: 200px;
	left: 50%;
	margin-inline: auto;
	position: absolute;
	top: -200px;
	transform: translateX(-50%);
	width: min(100%, 1920px);
}

.p-link .l-inner.l-link {
	padding-block: 0px 4px;
}

.p-link .p-link__ttl {
	font-size: 28px;
	text-align: center;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.57;
	margin-bottom: 40px;
	margin-inline: auto;
	padding-inline: 56px;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
  color: #33272A;
}

.p-link .p-link__ttl:before {
	background: url(../images/strengths/link_ttl_icon.png) no-repeat center center/contain;
	content: "";
	height: 44px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
}

.p-link .p-link__ttl::after {
	background: url(../images/strengths/link_ttl_icon.png) no-repeat center center/contain;
	content: "";
	height: 44px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
}

.p-link .p-link__items {
	display: grid;
	gap: 37px 37px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 717px);
}

.p-link .p-link__item a {
	display: block;
}

.p-link .p-link__item a img {
	height: auto;
	margin-bottom: 10px;
  width: 100%;
}

.p-link .p-link__item a p {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1850px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1850px) {
.p-reason .p-reason__img01 {
  position: absolute;
  right: 0;
  top: 2.484vw;
}
.p-reason .p-reason__img01 img {
  width: 12.973vw;
  height: auto;
}
.p-reason .p-reason__img02 {
  top: 27.595vw;
  left: 2.92vw;
  position: absolute;
}
.p-reason .p-reason__img02 img {
  width: 5.297vw;
  height: auto;
}
.p-reason .p-reason__img03 {
  bottom: 30.432vw;
  left: 2.649vw;
  position: absolute;
}
.p-reason .p-reason__img03 img {
  width: 13.243vw;
  height: auto;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1400px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1400px) {
.p-fv .p-fv__contents {
	align-items: center;
	display: grid;
	gap: 0 2.5vw;
	grid-template-columns: 36vw 49.643vw;
	justify-content: center;
	position: relative;
	left: 0vw;
}

.p-fv .p-fv__contents-right {
  position: relative;
  top: -1.214vw;
}

.p-fv .p-fv__contents-right img {
  width: 100%;
  height: auto;        
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1200px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1200px) {
.p-reason .p-reason__contents {
	display: grid;
	gap: 0 2.25vw;
	grid-template-columns: 42.667vw 42.25vw;
	justify-content: center;
	margin-bottom: 10vw;
	width: min(85%,1051px);
	margin-inline: auto;
	align-items: center;
}

.p-reason .p-reason__contents.reverse {
	grid-template-columns: 42.25vw 42.667vw;
	gap: 0 2.667vw;
	margin-bottom: 10.083vw;
}

.p-reason .p-reason__contents-left img {
  width: 100%;
  height: auto;        
}

}


/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {

#strengths .seo_bread_list {
	background: #FFFFFE;
}

.p-fv {
	background: #FFFFFE;
}

.p-fv .l-inner.l-fv {
	margin-inline: auto;
	padding-block: 0 0px;
	width: min(95%, 92.5120772947vw);
}

.p-fv .p-fv__contents {
	display: grid;
	gap: 5.797vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-fv .p-fv__contents-left {
	order: 2;
}

.p-fv .p-fv__contents-left h2 {
	font-size: 9.662vw;
}

.p-fv .p-fv__contents-left h2 {
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.025em;
	line-height: 1.6666666667;
	margin-bottom: 0;
	margin-bottom: 6vw;
}

.p-fv .p-fv__contents-left h2 span {
	font-size: 11.594vw;
	font-size: 8.213vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5294117647;
}

.p-fv .p-fv__contents-left h2 span.pink {
	color: #E3899F;
}

.p-fv .p-fv__contents-left p {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	-webkit-text-decoration-line: underline;
	text-decoration-line: underline;
	-webkit-text-decoration-style: dotted;
	text-decoration-style: dotted;
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: 0.242vw; /* 6.25% */
	text-underline-offset: 25%; /* 4px */
	text-underline-position: from-font;
  color: #594A4E;
}

.p-fv .p-fv__contents-right {
	order: 1;
}

.p-reason {
	padding-block: 30.9vw 10.9vw;
	position: relative;
	color: #594A4E;
}

.p-reason:before {
	background: url(../images/strengths/reason_bg_sp.png) no-repeat top center/contain;
	content: "";
	height: 50.483vw;
	left: 50%;
	margin-inline: auto;
	position: absolute;
	top: 0vw;
	transform: translateX(-50%);
	width: 100%;
	width: 100%;
}

.p-reason .l-inner.l-reason {
	padding-block: 1.155vw 0;
	background: #F9F2F1;
	position: relative;
  z-index: 10;
}

.p-reason .p-reason__img01 {
	position: absolute;
	right: 0;
	top: 0;
}

.p-reason .p-reason__img01 img {
	height: auto;
	width: 16.908vw;
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-reason .p-reason__img02 {
	top: 254vw;
	position: absolute;
	left: 2vw;
}

.p-reason .p-reason__img02 img {
	height: auto;
	width: 10.739vw;
}

.p-reason .p-reason__img03 {
	bottom: 279vw;
	position: absolute;
	right: 0vw;
}

.p-reason .p-reason__img03 img {
	height: auto;
	width: 22.739vw;
}

.p-reason .p-reason__con {

}

.p-reason .p-reason__contents {
	display: grid;
	gap: 6.314vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 15.459vw;
	margin-inline: auto;
	width: min(100%, 92.27vw);
}

.p-reason .p-reason__contents.reverse {
	display: grid;
	gap: 5.314vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-reason .p-reason__contents.reverse .p-reason__contents-left {
	order: 1;
}

.p-reason .p-reason__contents.reverse .p-reason__contents-right {
	order: 2;
}

.p-reason .p-reason__contents .p-reason__contents-right h3 {
	font-size: 3.865vw;
}

.p-reason .p-reason__contents .p-reason__contents-right h3 {
	font-size: 3.865vw;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 5.797vw;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt {
  margin-bottom: 5vw;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt p {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 3.865vw;
}

.p-reason .p-reason__contents .p-reason__contents-right .txt p.bottom {
	margin-bottom: 0;
}

.c-sec__btn {
}

.c-sec__btn a {
  display: block;
  font-size: 3.865vw;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.116vw;
  border-radius: 241.304vw;
  border:1px solid #33272A;
  background: #FFFFFE;
  width: fit-content;
  margin-inline: auto;
  padding-block: 2.8vw;
  padding-inline: 7.005vw 11.87vw;
  position: relative;
  color: #33272A;
}

.c-sec__btn.choice a {
  padding-inline: 5.005vw 10.87vw;
}

.c-sec__btn a::after {
  position: absolute;
  content: "";
  background: url(../images/strengths/btn_arrow.svg) no-repeat center center / contain;
  width: 1.208vw;
  height: 2.174vw;
  right: 7.763vw;
  top: 5.2vw;
}

.c-sec__btn.choice a::after {
  right: 6.763vw;
}


.c-sec__en {
	color: #3B4E71;
	font-size: 2.899vw;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.6666666667;
	text-align: center;
	margin-bottom: 2vw;
}

.c-sec__ttl {
	color: #3B4E71;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.025em;
	line-height: 1.6666666667;
	margin-bottom: 8.14vw;
	text-align: center;
}

.p-link {
	background: #FFFFFE;
	position: relative;
}

.p-link:before {
	background: url(../images/strengths/link_bg_sp.png) no-repeat top center/contain;
	content: "";
	height: 15.459vw;
	left: 50%;
	position: absolute;
	top: -7.459vw;
	transform: translateX(-50%);
	width: 100%;
}

.p-link .l-inner.l-link {
	padding-block: 11vw 1.768vw;
}

.p-link .p-link__ttl {
	font-size: 6.763vw;
}

.p-link .p-link__ttl {
	font-size: 4.83vw;
	font-weight: 700;
	line-height: 1.5555555556;
	margin-bottom: 7.662vw;
	margin-inline: auto;
	padding-inline: 12.87vw;
	position: relative;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
  color: #33272A;
}

.p-link .p-link__ttl:before {
	background: url(../images/strengths/link_ttl_icon.png) no-repeat center center/contain;
	content: "";
	height: 7.729vw;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 7.488vw;
}

.p-link .p-link__ttl::after {
	background: url(../images/strengths/link_ttl_icon.png) no-repeat center center/contain;
	content: "";
	height: 7.729vw;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 7.488vw;
}

.p-link .p-link__items {
	display: grid;
	gap: 7.246vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 82.1vw);
}

.p-link .p-link__item a {
	display: block;
}

.p-link .p-link__item a img {
	height: auto;
	margin-bottom: 2.899vw;
	width: 100%;
}

.p-link .p-link__item a p {
	font-size: 3.865vw;
}

.p-link .p-link__item a p {
	font-size: 3.865vw;
	font-weight: 400;
	line-height: 1.75;
}

}
