@charset "UTF-8";
#flow01 main {
  color: #594A4E;
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {
.p-fv {
	background: url(../images/flow01/fv_bg.png) no-repeat bottom 108px center/auto;
	margin-block: -45px -240px;
	margin-inline: auto;
	max-width: 1920px;
	position: relative;
	width: 100%;
	z-index: 10;
}

.p-fv .p-fv__contents {
	display: grid;
	grid-template-columns: 500px 743px;
	justify-content: center;
	position: relative;
	right: -81px;
}

.p-fv .p-fv__contents-left {
	position: relative;
	top: 128px;
	left: 40px;
}

.p-fv .p-fv__contents-left h2 {
	font-size: 40px;
  font-size: clamp(1.5rem, 0.833rem + 1.39vw, 2.5rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: 34px;
}

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

.p-fv .p-fv__contents-left .txt p {
	-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;
	-webkit-text-decoration-color: var(--neutral-paragraph, #594A4E);
	font-size: 18px;
  font-size: clamp(0.75rem, 0.5rem + 0.52vw, 1.125rem);
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.8333333333;
	margin-bottom: 34px;
	text-decoration-color: var(--neutral-paragraph, #594A4E);
	text-decoration-thickness: 1px; /* 5.556% */
	text-underline-offset: 25%; /* 4.5px */
	text-underline-position: from-font;
  color: #594A4E;
}

.p-fv .p-fv__contents-left .txt p.bottom {
	margin-bottom: 0;
}

.p-support {
	position: relative;
  margin-bottom: -100px;
}

.p-support .l-inner.l-support {
	position: relative;
}

.p-support .p-support__icon01 {
	left: 0;
	position: absolute;
	top: 201px;
}

.p-support .p-support__icon02 {
	position: absolute;
	right: 0;
	top: 269px;
}

.p-support .p-support__con {
  background: #FFFFFE;
  padding-block: 112px 0;  
}

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

.p-support .c-sec__ttl {
	color: #3B4E71;
	font-size: 54px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: 20px;
	text-align: center;
}

.p-support .c-sec__ttl span {
	font-size: 40px;
  font-size: clamp(2rem, 1.667rem + 0.69vw, 2.5rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

.p-support .c-sec__ttl span.step {
	font-size: 54px;
  font-size: clamp(2.5rem, 1.917rem + 1.22vw, 3.375rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

.p-support .p-support__txt {
	font-size: 20px;
  font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.85;
	margin-bottom: 47px;
	margin-inline: auto;
	text-align: center;
	width: 653px;
}

.p-support .p-support__img {
	margin-bottom: -166px;
	text-align: center;
}

.p-support .p-step__box {
	background: url(../images/flow01/step_bg.png) no-repeat top center/auto;
	margin-inline: auto;
	max-width: 1920px;
	padding-block: 230px 127px;
	position: relative;
	width: 100%;
}

.p-support .p-step__img01 {
	position: absolute;
	right: 0;
	top: 163px;
}

.p-support .p-step__img02 {
	left: 0;
	position: absolute;
	top: 544px;
}

.p-support .p-step__img03 {
	position: absolute;
	right: 0;
	top: 1100px;
}

.p-support .p-step__img04 {
	left: 18px;
	position: absolute;
	top: 1316px;
}

.p-support .p-step__img05 {
	position: absolute;
	right: 174px;
	top: 1800px;
}

.p-support .p-step__img06 {
	left: 36px;
	position: absolute;
	top: 1956px;
}

.p-support .p-step__img07 {
	bottom: 853px;
	position: absolute;
	right: 0;
}

.p-support .p-step__img08 {
	bottom: 704px;
	left: 0;
	position: absolute;
}

.p-support .p-step__img09 {
	bottom: -71px;
	left: 0;
	position: absolute;
}

.p-support .p-step__items {
	display: grid;
	gap: 120px 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 970px);
}

.p-support .p-step__item {
	background: #FFFFFE;
	border-radius: 30px;
	display: grid;
	gap: 0 37px;
	grid-template-columns: 530px minmax(0, 1fr);
	padding: 48px 67px 14px;
	position: relative;
	position: relative;
}

.p-support .p-step__item:last-child::after {
	content: none;
}

.p-support .p-step__item::after {
	background: url(../images/flow01/step_arrow.svg) no-repeat center center/contain;
	bottom: -79px;
	content: "";
	height: 30px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 35px;
}

.p-support .p-step__item .con .num {
	left: -50px;
	position: absolute;
	top: 1px;
}

.p-support .p-step__item .con h3 {
	color: #3B4E71;
	font-size: 26px;
  font-size: clamp(1.25rem, 1rem + 0.52vw, 1.625rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: 20px;
}

.p-support .p-step__item .con span {
	color: #3B4E71;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

.p-support .p-step__item .con .txt p {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 15px;
}

.p-support .p-step__item .con .txt p.bottom {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 0;
  color: #571519;
}

.p-support .p-step__item .con .txt p.bottom02 {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 0;
}

.p-support .p-step__item .con .txt p.bottom03 {
	font-size: 16px;
  font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 0px;
}

.p-bottom {
}

.p-bottom .l-inner.l-bottom {
	padding-block: 146px 188px;
  position: relative;
  background: #F9F2F1;
}

.p-bottom .p-bottom__img01 {
  position: absolute;
  top: 447px;
  right: 112px;
}

.p-bottom .p-bottom__img02 img {
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-bottom .p-bottom__img02 {
  position: absolute;
  top: 409px;
  left: 0;
}

.p-bottom .p-bottom__items {
	display: grid;
	gap: 0 33px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-bottom: 83px;
	margin-inline: auto;
	width: min(95%, 1277px);
  position: relative;
  z-index: 10;
}

.p-bottom .p-bottom__txt {
	font-size: 38px;
  font-size: clamp(2rem, 1.75rem + 0.52vw, 2.375rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5526315789;
	margin-inline: auto;
	padding-inline: 59px;
	position: relative;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-bottom .p-bottom__txt:before {
	background: url(../images/flow01/bottom_ttl_icon.svg) no-repeat center center/contain;
	content: "";
	height: 44px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
}

.p-bottom .p-bottom__txt::after {
	background: url(../images/flow01/bottom_ttl_icon.svg) no-repeat center center/contain;
	content: "";
	height: 44px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
}

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

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

.p-link .l-inner.l-link {
	margin-inline: auto;
	width: min(85%, 1102px);
  padding-block: 16px 0;  
}

.p-link .p-link__items {
	display: grid;
	gap: 44px 45px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.p-link .p-link__item:nth-child(1) {
	position: relative;
	top: -16px;
}

.p-link .p-link__item:nth-child(1) a img {
	margin-bottom: -2px;
}

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

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

.p-link .p-link__item a p {
  font-size: 16px;
  font-size: clamp(0.75rem, 0.583rem + 0.35vw, 1rem);
  line-height: 1.75;
  letter-spacing: 0.48px;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1500px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1500px) {
.p-support .p-support__icon01 {
	left: 0;
	position: absolute;
	top: 13.4vw;
}

.p-support .p-support__icon01 img {
  width: 12.467vw;
  height: auto;
}

.p-support .p-support__icon02 {
	position: absolute;
	right: 0;
	top: 17.933vw;
}

.p-support .p-support__icon02 img {
  width: 12.333vw;
  height: auto;
}

.p-support .p-step__img01 {
	position: absolute;
	right: 0;
	top: 10.867vw;
}

.p-support .p-step__img01 img {
  width: 32.867vw;
  height: auto;
}

.p-support .p-step__img02 {
	left: 0;
	position: absolute;
	top: 36.267vw;
}

.p-support .p-step__img02 img {
  width: 14.467vw;
  height: auto;
}

.p-support .p-step__img03 {
	position: absolute;
	right: 0;
	top: 73.333vw;
}

.p-support .p-step__img03 img {
  width: 23vw;
  height: auto;
}

.p-support .p-step__img04 {
	left: 1.2vw;
	position: absolute;
	top: 87.733vw;
}

.p-support .p-step__img04 img {
  width: 13.6vw;
  height: auto;
}

.p-support .p-step__img05 {
	position: absolute;
	right: 11.6vw;
	top: 120vw;
}

.p-support .p-step__img05 img {
  width: 12.4vw;
  height: auto;
}

.p-support .p-step__img06 {
	left: 2.4vw;
	position: absolute;
	top: 130.4vw;
}

.p-support .p-step__img06 img {
  width: 16.533vw;
  height: auto;
}

.p-support .p-step__img07 {
	bottom: 56.867vw;
	position: absolute;
	right: 0;
}

.p-support .p-step__img07 img {
  width: 17.8vw;
  height: auto;
}

.p-support .p-step__img08 {
	bottom: 46.933vw;
	left: 0;
	position: absolute;
}

.p-support .p-step__img08 img {
  width: 20.4vw;
  height: auto;
}

.p-support .p-step__img09 {
	bottom: -4.733vw;
	left: 0;
	position: absolute;
}

.p-support .p-step__img09 img {
  width: 38.867vw;
  height: auto;
}

.p-bottom .p-bottom__img01 {
  position: absolute;
  top: 29.8vw;
  right: 7.467vw;
}

.p-bottom .p-bottom__img01 img {
  width: 10.733vw;
  height: auto;
}

.p-bottom .p-bottom__img02 {
  position: absolute;
  top: 27.267vw;
  left: 0;
}

.p-bottom .p-bottom__img02 img {
  width: 20.4vw;
  height: auto;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1400px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1400px) {
.p-bottom .p-bottom__item img {
  width: 100%;
  height: auto;        
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1300px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1300px) {
.p-fv .p-fv__contents {
	display: grid;
	grid-template-columns: 38.462vw 57.154vw;
	justify-content: center;
	position: relative;
	right: 0vw;
}

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

.p-fv {
	background: url(../images/flow01/fv_bg.png) no-repeat bottom 108px center/contain;
	margin-block: -3.462vw -18vw;
}

.p-link .p-link__item:nth-child(1) {
	position: relative;
	top: -1.231vw;
}

.p-link .p-link__item:nth-child(1) a img {
	margin-bottom: -0.154vw;
}

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

/* ========================================
@media screen and (min-width:768px) and ( max-width:1100px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1100px) {
.p-support .p-support__img img {
  width: 90%;
}

.p-support .p-step__item {
	background: #FFFFFE;
	border-radius: 2.727vw;
	display: grid;
	gap: 0 3.364vw;
	grid-template-columns: 48.1vw minmax(0, 1fr);
	padding: 4.364vw 6vw 4.364vw 9vw;
	position: relative;
}

.p-support .p-step__item .img img {
  width: 100%;
  height: auto;        
}

.p-support .p-step__item .con .num {
	left: -0.5vw;
	position: absolute;
	top: -2.9vw;
}

.p-support .p-step__item .con .num img {
  width: 7.2vw;
  height: auto;

}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:950px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:950px) {
.p-fv {
  padding-block: 0 4vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:850px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:850px) {
.p-fv {
  margin-block: -3.4vw -21vw;
  padding-block: 0 14vw;  
}
}

/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
.p-fv {
	background: url(../images/flow01/fv_bg_sp.png) no-repeat bottom center/contain;
	margin-inline: auto;
	padding-block: 0 5.155vw;
	position: relative;
	width: 100%;
	z-index: 10;
  margin-bottom: -9vw;
}

.p-fv .p-fv__contents {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	position: static;
	width: min(95%, 91.7vw);
}

.p-fv .p-fv__contents-left {
  display: contents;
}

.p-fv .p-fv__contents-left h2 {
	font-size: 6.28vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	margin-bottom: -0.86vw;
	order: 1;
	text-align: center;
}

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

.p-fv .p-fv__contents-left .txt {
  order: 3;
}

.p-fv .p-fv__contents-left .txt p {
	-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;
	-webkit-text-decoration-color: var(--neutral-paragraph, #594A4E);
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.8125;
	margin-bottom: 7.797vw;
	text-decoration-color: var(--neutral-paragraph, #594A4E);
	text-decoration-thickness: 0.242vw; /* 5.556% */
	text-underline-offset: 25%; /* 4.5px */
	text-underline-position: from-font;
  color: #594A4E;
}

.p-fv .p-fv__contents-right {
	order: 2;
	text-align: center;
	margin-bottom: -7vw;
}

.p-fv .p-fv__contents-right img {
	height: auto;
	width: 81.464vw;
}

.p-fv .p-support__icon01 {
	position: absolute;
	right: 0;
	bottom: -11.155vw;
	z-index: 10;
}

.p-fv .p-support__icon01 img {
	height: auto;
	width: 19.324vw;
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-support {
}

.p-support .l-inner.l-support {
	position: relative;
  padding-block: 0 10vw;  
}

.p-support .p-support__icon02 {
	left: 0;
	position: absolute;
	top: 72.464vw;
}

.p-support .p-support__icon02 img {
	height: auto;
	width: 21.256vw;
}

.p-support .c-sec__en {
	color: #3B4E71;
	font-size: 2.899vw;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-bottom: 1.449vw;
	order: 1;
	text-align: center;
}

.p-support .c-sec__ttl {
	color: #3B4E71;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.375;
	margin-bottom: 4.831vw;
	order: 2;
	text-align: center;
}

.p-support .c-sec__ttl span {
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.375;
}

.p-support .c-sec__ttl span.step {
	font-size: 8.696vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.3888888889;
}

.p-support .p-support__txt {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.85;
	margin-inline: auto;
	order: 4;
	width: min(95%, 91.7vw);
  text-align: center;
}

.p-support .p-support__img {
	margin-bottom: 4.831vw;
	order: 3;
	text-align: center;
}

.p-support .p-support__img img {
	height: auto;
	width: 68.357vw;
}

.p-support .p-support__con {
	display: grid;
	position: relative;
  background: #FFFFFE;
  padding-block: 15vw 28vw;  
}

.p-support .p-step__box {
  background-image: url(../images/flow01/step_bg_sp.png); /* 画像を指定 */
  background-position: top center; /* 画像の位置を指定 */
  background-repeat: no-repeat; /* 画像を繰り返さない */
  background-size: contain; /* 画像のサイズ調整（必要に応じて変更） */
	margin-inline: auto;
	padding-block: 0vw 16vw;
	position: relative;
	width: 100%;
}

.p-support .p-step__box::before {
  position: absolute;
  content: "";
  background: url(../images/flow01/step_bg02_sp.png) no-repeat center center / contain;
  width: 100%;
  height: 29.469vw;
  top: -20vw;
  left: 0;
  z-index: 10;
}

.p-support .p-step__img01 {
	position: absolute;
	right: 0;
	top: -28vw;
  z-index: 10;
}

.p-support .p-step__img01 img {
	height: auto;
	width: 38.401vw;
}

.p-support .p-step__img02 {
	left: 0;
	position: absolute;
	top: 165.155vw;
}

.p-support .p-step__img02 img {
	height: auto;
	width: 15.802vw;
}

.p-support .p-step__img03 {
	position: absolute;
	right: 0;
	top: 317.237vw;
}

.p-support .p-step__img03 img {
	height: auto;
	width: 17.874vw;
}

.p-support .p-step__img04 {
	left: 0;
	position: absolute;
	top: 480.546vw;
}

.p-support .p-step__img04 img {
	height: auto;
	width: 13.874vw;
}

.p-support .p-step__img05 {
	position: absolute;
	right: 4vw;
	top: 637.855vw;
}

.p-support .p-step__img05 img {
	height: auto;
	width: 18.42vw;
}

.p-support .p-step__img06 {
	left: 0;
	position: absolute;
	top: 794.164vw;
}

.p-support .p-step__img06 img {
	height: auto;
	width: 19.778vw;
}

.p-support .p-step__img07 {
	bottom: 303.237vw;
	position: absolute;
	right: 0;
}

.p-support .p-step__img07 img {
	height: auto;
	width: 16.425vw;
}

.p-support .p-step__img08 {
	bottom: 133vw;
	position: absolute;
	left: 0;
}

.p-support .p-step__img08 img {
  width: 23.778vw;
  height: auto;
}

.p-support .p-step__img09 {
	bottom: 6vw;
	position: absolute;
	left: 0;
}

.p-support .p-step__img09 img {
  width: 40vw;
  height: auto;
}

.p-support .p-step__img10 {
  position: absolute;
  right: 7vw;
  bottom: -5vw;
}

.p-support .p-step__img10 img {
  width: 16vw;
  height: auto;
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-support .p-step__items {
	display: grid;
	gap: 16.256vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 91.7vw);
  position: relative;
  z-index: 10;
}

.p-support .p-step__item {
	border-radius: 4.831vw;
	display: grid;
	gap: 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	padding-block: 14.734vw 5.556vw;
	padding-inline: 3.865vw;
  background: #FFFFFE;
	position: relative;
}

.p-support .p-step__item:last-child::after {
	content: none;
}

.p-support .p-step__item::after {
	content: none;
}

.p-support .p-step__item .con {
	display: contents;
}

.p-support .p-step__item .con .num {
	left: 50%;
	position: absolute;
	top: -7.729vw;
	transform: translateX(-50%);
}

.p-support .p-step__item .con .num img {
	height: auto;
	width: 18.116vw;
}

.p-support .p-step__item .con h3 {
	color: #3B4E71;
	font-size: 6.28vw;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.5;
	margin-bottom: 4.831vw;
	order: 1;
	text-align: center;
}

.p-support .p-step__item .con span {
	color: #3B4E71;
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
  display: block;
}

.p-support .p-step__item .con .txt {
	order: 3;
}

.p-support .p-step__item .con .txt p {
	font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 3.415vw;
}

.p-support .p-step__item .con .txt p.bottom {
	font-size: 3.623vw;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 0;
  color: #571519;
}

.p-support .p-step__item .con .txt p.bottom02 {
  font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 3.415vw;
}

.p-support .p-step__item .con .txt p.bottom03 {
  font-size: 3.865vw;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.75;
	margin-bottom: 0vw;
}


.p-support .p-step__item .img img {
  width: 70.29vw;
  height: auto;
}

.p-support .p-step__item .img {
	margin-bottom: 5.039vw;
	order: 2;
  text-align: center;
}

.p-bottom {
  margin-block: 0vw 0;
  background: #F9F2F1;
}

.p-bottom .l-inner.l-bottom {
	padding-block: 0vw 16.662vw;
  position: relative;
  background: #F9F2F1;
}

.p-bottom .p-bottom__img02 {
  position: absolute;
  right: 7vw;
  top: -10vw;
}

.p-bottom .p-bottom__img02 img {
  width: 16vw;
  height: auto;
  opacity: 0.8;
  mix-blend-mode: multiply;
}

.p-bottom .p-bottom__items {
	display: grid;
	gap: 2.415vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 82.3671497585vw);
  position: relative;
  top: -9vw;
  margin-bottom: 0vw;
}

.p-bottom .p-bottom__txt {
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5416666667;
	margin-inline: auto;
	padding-inline: 9.662vw;
	position: relative;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.p-bottom .p-bottom__txt:before {
	background: url(../images/flow01/bottom_ttl_icon.svg) no-repeat center center/contain;
	content: "";
	height: 7.488vw;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 7.488vw;
}

.p-bottom .p-bottom__txt::after {
	background: url(../images/flow01/bottom_ttl_icon.svg) no-repeat center center/contain;
	content: "";
	height: 7.488vw;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 7.488vw;
}

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

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

.p-link .l-inner.l-link {
	margin-inline: auto;
	padding-block: 6.039vw 12.077vw;
	width: min(95%, 82.1vw);
}

.p-link .p-link__items {
	display: grid;
	gap: 6vw 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-link .p-link__item:nth-child(1) a img {
  margin-bottom: 0vw;
}

.p-link .p-link__item a img {
  margin-bottom: 2vw;
}

.p-link .p-link__item a p {
  font-size: 3.623vw;
  line-height: 1.65;
  letter-spacing: 0.109vw;
}

}