@charset "UTF-8";

/*____________________________________________________________________________

SITE TITLE: 
____________________________________________________________________________*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root {
    font-size: 10px;
    
    --font-ja: "Noto Sans JP";
    --black: #2D2D2D;
    --white: #ffffff;
    --gray: #BBBCBC;
    --gray-bg: #D9D9D9;
    --green: #298A87;
    --dark-navy: #003555;
    
    --gradiant-heading: linear-gradient(90deg, #104472 0%, #124773 20.19%, #195175 39.42%, #256279 60.1%, #357A7F 80.29%, #398080 100%);
	--gradiant-bg: linear-gradient(75.68deg, #104472 0%, #124773 16.68%, #195175 32.56%, #256279 49.64%, #357A7F 66.31%, #398080 82.6%);
}

body {
	font-family: var(--font-ja);
	color: var(--black);
}

a { transition:0.3s; }
a:link { color: var(--text-color-link); text-decoration: none;}
a:visited { color: var(--text-color-link); text-decoration:none;}
a:active { color: var(--text-color-hover); text-decoration:none;}
a:hover { color: var(--text-color-hover); text-decoration:none;}
:focus{	outline:none; }
a:hover {
	opacity:0.6;
	filter:alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	background-repeat: no-repeat;
	background-size: cover;
	shape-margin: 0.75rem;
	image-rendering: -webkit-optimize-contrast;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
strong {
	font-weight: 700;
	color: var(--green);
}
/*----------------------------------------------------------------------------
LAYOUT
----------------------------------------------------------------------------*/

.l-main {
	margin-top: 0;
	width: 100%;
}
.l-section-inner {
	max-width: 1040px;
	margin: auto;
	padding: 0 20px;
}
.p-section {
	padding: 64px 0 80px;
}

.p-layout-flex {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
}
@media screen and (min-width: 768px) {

.u-hidden-pc {
	display: none
}

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

.l-main {
	margin-top: 0;
}
.l-section-inner {
	max-width: 89.333vw;
	padding: 0;
}
.p-section {
	padding: 21.333vw 0;
}
.u-hidden-sp {
	display: none
}
}


/*----------------------------------------------------------------------------
 HEADER
----------------------------------------------------------------------------*/

.l-header {
	position: relative;
	width: 100%;
	height: 80px;
	padding: 0 32px 0;
    background-color: #fff;
    z-index: 100;
    align-items: center;
    gap: 32px;
}
.p-logo-header {
	margin-top: 5.5px; 
	width: 212px;
	height: auto;
}
.p-page-description {
	padding: 6px 11px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--green);
	border: 1px solid var(--green);
}

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

.l-header {
	padding: 0 6.4vw 0;
	height: 14.133vw;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap:0;
}
.p-logo-header {
	margin-top: 0; 
	width: 42.133vw;
	height: auto;
}
.p-page-description {
	padding: 0;
	font-size: 3.2vw;
	border: none;
}

}

/*----------------------------------------------------------------------------
 FOOTER
----------------------------------------------------------------------------*/

#footer .footer__top {
  background-color: #F2FCFE;
  padding: 26px 0;
}
#footer .footer__top p {
  font-size: 1.2rem;
  line-height: 1.7;
  margin-bottom: 18px;
}
#footer .footer__bottom {
  padding-top: 20px;
}
#footer .footer__bottom--logoArea {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
  padding: 10px 0;
}
#footer .footer__bottom--logoArea .footer__bottom--privacy {
  display: flex;
  gap: 8px;
}
#footer .footer__bottom--logoArea .footer__bottom--privacyImg {
  width: 54px;
}
#footer .footer__bottom--logoArea .footer__bottom--privacyText p {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.5px;
  margin-bottom: 6px;
}
#footer .footer__bottom--logoArea .footer__bottom--privacy a {
  font-size: 10px;
  line-height: 1;
  color: #333;
}
#footer .footer__bottom--logoArea .footer__bottom--logo {
	margin-top: 5.5px;
  width: 240px;
}
#footer .footer__bottom--copyright {
  padding: 36px 0;
  font-size: 12px;
  text-align: center;
}

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

  #footer .footer__top {
    padding: 20px 0;
  }
  #footer .footer__top p {
    font-size: 12px;
    line-height: 1.7;
    margin-bottom: 18px;
  }
  #footer .footer__bottom--linkArea {
    justify-content: flex-start;
  }
  #footer .footer__bottom--logoArea .footer__bottom--privacy {
    margin-left: 0;
    padding: 0 5.333vw 2.666vw;
  }
  #footer .footer__bottom--logoArea .footer__bottom--privacyImg {
    width: 54px;
  }
  #footer .footer__bottom--logoArea .footer__bottom--privacyText p {
    padding-top: 4px;
  }
  #footer .footer__bottom--logoArea .footer__bottom--privacy a {
    position: relative;
  }
  
#footer .footer__bottom--logoArea {
	flex-flow: column;
  align-items: unset;
  justify-content: unset;
  border-top: 1px solid #dbdbdb;
  border-bottom: none;
  padding: 2.666vw ;
}
  #footer .footer__bottom .footer__bottom--logo {
    display: block;
    width: 100%;
    margin-top: 0;
    padding: 9.6vw 0 0;
    margin: 0;
  border-top: 1px solid #dbdbdb;
  }
    #footer .footer__bottom .footer__bottom--logo img {
    	margin: auto;
    	width: 56.533vw;
    }
  #footer .footer__bottom--copyright {
  	margin: 0 -1.333vw;
    padding: 0 0 9.6vw;
    font-size: 3.2vw;
  }
}/*# sourceMappingURL=footer.css.map */



/*----------------------------------------------------------------------------
HEADING
----------------------------------------------------------------------------*/

.l-heading-section {
	margin-bottom: 48px;
}
.p-heading-section {
	font-family: Noto Sans JP;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.5;
	letter-spacing: 0;
	vertical-align: middle;
	text-align: center;
	color: var(--dark-navy);
}
.p-heading-block {
	font-family: Noto Sans JP;
	font-weight: 400;
	font-size: 32px;
	line-height: 1.89;
	text-align: center;
	vertical-align: middle;
	color: var(--dark-navy);
}

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

.l-heading-section {
	margin-bottom: 8.533vw;
}
.p-heading-section {
	font-size: 6.4vw;
}
.p-heading-section-en {
	margin-top: 4.266vw;
	font-size: 5.333vw;
}
.p-heading-block {
	font-size: 5.333vw;
}
}

/*----------------------------------------------------------------------------
 MV
----------------------------------------------------------------------------*/
.l-mv {
	position: relative;
	margin-bottom: 53px;
	padding: 40px 0 36px;
	width: 100%;
	height: 567px;
	background-image: url(../images/img_mv_pc.jpg);
	background-size: auto 429px;
	background-position: top center;
	background-repeat: no-repeat;
}
.l-mv:after {
	content: "";
	width: 100%;
	height: 138px;
	background: linear-gradient(90deg, #F8F8F8 53.47%, #DADADA 64.31%);
	position: absolute;
	top: 429px;
	left: 0;
	right: 0;
	margin: auto;
}
.l-mv-container {
	margin: auto;
	padding: 0 20px;
	max-width: 1246px;
	justify-content: space-between;
}

.p-mv-dscription {
	padding-top: 12px;
}
.p-mv-catch {
	margin-bottom: 30px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--dark-navy);
	letter-spacing: 0.05em;
	line-height: 1.5;
}
.p-list-mv-support {
	margin-bottom: 16px;
	gap: 8px;
}
.p-list-mv-support-item {
	padding: 4px 8px;
	font-size: 2.0rem;
	font-weight: 700;
	color: var(--green);
	line-height: 1.5;
	background: var(--white);
	border: 1px solid var(--green);
}
.p-mv-heading {
	font-size: 4.0rem;
	font-weight: 700;
	color: var(--dark-navy);
	line-height: 1;
	letter-spacing: 0.08em;
}
.p-mv-heading .c-txt-small-mv {
	font-size: 2.8rem;
}

.p-heading-main-wrap {
	position: relative;
	display: inline-block;
	margin-top: 24px;
	width: auto;
	padding: 16px 16px 16px 16px;
	background: var(--green);
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
}
.p-heading-main {
	position: relative;
	font-size: 5.6rem;
	color: var(--white);
	line-height: 1;
	letter-spacing: 0.04em;
	z-index: 1;
	text-shadow: 0px 4px 8px rgba(0,0,0,0.35);
}
.p-heading-main-wrap:before {
	content: "";
	width: 200px;
	height: 100%;
	background: linear-gradient(110deg, rgba(255,255,255,0.15) 80%, transparent 80%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.p-heading-main-wrap:after {
	content: "";
	width: 62px;
	height: 50px;
	background-image: url(../images/img_deco_triangle.png);
	background-size: cover;
	position: absolute;
	top: -11px;
	left: -39px;
}
.p-heading-main .c-txt-small-mv {
	font-size: 3.2rem;
}
.p-heading-sub {
	display: block;
	margin-top: 12px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	color: var(--white);
	letter-spacing: 0;
	text-shadow: 0px 4px 6px rgba(0,0,0,0.30);
}
.p-mv-outline-items {
	position: relative;
	margin-top: 114px;
	z-index: 1;
	display: flex;
	flex-flow: column;
	gap: 12px;
}
.p-mv-outline-item {
	padding-left: 24px;
	font-size: 1.9rem;
	font-weight: 400;
	color: var(--dark-navy);
	line-height: 1.5;
	letter-spacing: 0;
	background-image: url(../images/icon_check.png);
	background-repeat: no-repeat;
	background-size: 20px auto;
	background-position: center left;
}
.p-mv-outline-item strong {
	color: var(--dark-navy);
}
.p-container-form {
	position: relative;
	padding: 10px 10px;
	width: 480px;
	height: 580px;
	background: var(--white);
	border: 4px solid var(--green);
	border-radius: 16px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
	z-index: 1;
}
.p-container-form iframe {
	width: 100%;
	height: 100%;
	border: 1px solid #c00;
}

@media screen and (min-width: 1921px) {

.l-mv {
	background-size: 100% auto;
	background-position: top center;
}
}
@media screen and (max-width: 1120px) {
.l-mv {
	height: auto;
	background-position: top left 25%;
}
.l-mv-container {
	flex-flow: column;
	justify-content: unset;
}
.p-container-form {
	margin: 100px auto 0;
	width: 640px;
	height: 580px;
}
}
@media screen and (max-width: 767px) {
.l-mv {
	margin-bottom: 0;
	padding: 5.866vw 0 0;
	width: 100%;
	background-image: url(../images/img_mv_sp.jpg);
	background-size: 100% auto;
}
.l-mv:after {
	content: none;
}
.l-mv-container {
	margin: auto;
	padding: 0;
	max-width: 100%;
	flex-flow: column;
	justify-content: unset;
}
.p-mv-dscription {
	padding-top: 0;
}
.p-mv-catch {
	margin-left: 48.533vw;
	margin-bottom: 6.133vw;
	font-size: 4.0vw;
}
.p-mv-dscription-inner {
	margin: 0 auto 5.333vw;
	width: 89.333vw;
	background: var(--white);
	border-radius: 8px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
	overflow: hidden;
}
.p-list-mv-support {
	margin: 5.333vw 5.333vw 4.266vw;
	gap: 2.133vw;
}
.p-list-mv-support-item {
	font-size: 3.733vw;
	line-height: 1.3;
	text-align: center;
}
.p-mv-heading {
	font-size: 6.133vw;
	text-align: center;
}
.p-mv-heading .c-txt-small-mv {
    font-size: 4.8vw;
}
.p-heading-main-wrap {
	margin-top: 4.266vw;
	width: 100%;
	padding: 3.2vw;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.35);
}
.p-heading-main-wrap:after {
	content: none;
}
.p-heading-main {
	font-size: 8.266vw;
}
.p-heading-main-wrap:before {
	content: "";
	width: 200px;
	height: 100%;
	background: linear-gradient(110deg, rgba(255,255,255,0.15) 80%, transparent 80%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.p-heading-main .c-txt-small-mv {
	font-size: 5.866vw;
}
.p-heading-sub {
	display: block;
	margin-top: 3.2vw;
	font-size: 3.733vw;
	text-align: center;
}
.p-mv-outline-items {
    position: relative;
    margin-top: 0;
    margin-bottom: 6.4vw;
    padding: 4.266vw 5.3vw;
    gap: 3.2vw;
	background: linear-gradient(90deg, #F8F8F8 53.47%, #DADADA 100%);
}
.p-mv-outline-item {
    padding-left: 6.4vw;
    font-size: 3.733vw;
    background-size: 4.266vw auto;
}
.p-container-form {
	margin: 0;
	padding: 0 1.333vw;
	width: 100%;
	height: 145vw;
	border: none;
	border-radius: 0;
	box-shadow: none;
	z-index: 1;
}
}

/*----------------------------------------------------------------------------
 お悩み・困りごと
----------------------------------------------------------------------------*/

.l-problems {
	background-image: url(../images/bg_problems.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 100% auto;
}
.p-heading-problems {
	font-size: 3.2rem;
	line-height: 1.5;
}
.p-heading-problems strong {
	font-size: 4.8rem;
}

.l-list-problems {
	position: relative;
	margin-bottom: 64px;
	padding: 32px 141px 32px 237px;
	background: var(--white);
	box-shadow: 0px 4px 32px rgba(0,0,0,0.16);
}
.l-list-problems:before {
	content: "";
	width: 160px;
	height: 206px;
	background-image: url(../images/img_deco_problems_01.png);
	background-size: cover;
	position: absolute;
	left: 0;
	bottom: 0;
}
.l-list-problems:after {
	content: "";
	width: 64px;
	height: 68px;
	background-image: url(../images/icon_arrows.svg);
	background-size: cover;
	position: absolute;
	bottom: -60px;
	left: 0;
	right: 0;
	margin: auto;
}
.p-list-problems {
	display: inline-grid;
	column-gap: 16px;
	grid-auto-flow: column;
	grid-template-rows: repeat(3, auto);
}
.p-list-problems-item {
	position: relative;
	padding-left: 24px;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 8px;
}
.p-list-problems-item:before {
	content: "";
	width: 8px;
	height: 8px;
	background: var(--green);
	border-radius: 50%;
	position: absolute;
	left: 8px;
	top: 0.6em;
}
.p-list-problems-item:nth-of-type(3n) {
	margin-bottom: 0;
}
.p-problems-solution {
	position: relative;
	padding: 24px 40px;
	background: var(--green);
}
.p-txt-solution {
	position: relative;
	font-weight: 700;
}
.p-txt-solution:before {
	content: "";
    width: 92px;
    height: 75px;
    background-image: url(../images/img_deco_triangle.png);
    background-size: cover;
    position: absolute;
    top: -46px;
    left: -92px;
}
.p-lesd-solution {
	display: inline-block;
	margin-bottom: 16px;
	padding: 4px 8px;
	font-size: 2.4rem;
	line-height: 1.3;
	color: var(--green);
	background: var(--white);
}
.p-txt-solution-main {
	display: block;
	font-size: 4.6rem;
	line-height: 1.3;
	color: var(--white);
}
.p-txt-solution-main .c-txt-small {
	font-size: 3.2rem;
}
.p-problems-solution:before {
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient( -72deg, rgba(255, 255, 255, 0.15) 32.3%, transparent 32.3%);
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}
.p-problems-solution:after {
    content: "";
    width: 307px;
    height: 241px;
	background-image: url(../images/img_deco_problems_02.png);
	background-size: cover;
	position: absolute;
	bottom: 0px;
	right: 8px;
	z-index: 2;
}
@media screen and (max-width: 1000px) {
.p-problems-solution:after {
    content: none;
}
}

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

.l-problems {
	margin: auto;
	padding: 17.066vw 5.333vw 0;
	width: 100%;
	background-image: url(../images/bg_problems_sp.png);
	background-position: top 6.4vw center;
	background-size: 100% auto;
}
.p-heading-problems {
	position: relative;
	font-size: 6.666vw;
	text-align: left;
}
.p-heading-problems strong {
	font-size: 6.666vw;
}
.l-list-problems {
	position: relative;
	margin-bottom: 12.8vw;
	padding: 5.333vw 7.2vw;
	background: var(--white);
	box-shadow: 0px 4px 32px rgba(0,0,0,0.16);
}
.l-list-problems:before {
	content: "";
	width: 24.533vw;
	height: 29.066vw;
	background-image: url(../images/img_deco_problems_01_sp.png);
	background-size: cover;
	position: absolute;
	left: auto;
	right: 0;
	top: -29.066vw;
}
.l-list-problems:after {
	content: "";
	width: 13.066vw;
	height: 13.333vw;
	bottom: -10.666vw;
}
.p-list-problems {
	display: flex;
	flex-flow: column;
	column-gap: unset;
	grid-auto-flow: unset;
	grid-template-rows: unset;
}
.p-list-problems-item {
	font-size: 4.266vw;
}
.p-list-problems-item:nth-of-type(3n) {
	margin-bottom: 8px;
}
.p-list-problems-item:nth-last-of-type(1) {
	margin-bottom: 0px;
}
.p-problems-solution {
	padding: 6.4vw 4.8vw 55.4666vw;
}
.p-txt-solution {
	position: relative;
	font-weight: 700;
}
.p-txt-solution:before {
	content: none;
}
.p-lesd-solution {
	display: block;
	margin-bottom: 0;
	padding: 2.133vw;
	font-size: 4.266vw;
	text-align: center;
}
.p-txt-solution-main {
	font-size: 8.533vw;
	text-align: center;
}
.p-txt-solution-main .c-txt-small {
	font-size: 4.8vw;
}
.p-txt-solution-main .c-txt-small.u-txt-inherit {
	font-size: 8.533vw;
}
.p-problems-solution:before {
    content: "";
    width: 100%;
    height: 45.866vw;
    background: linear-gradient( -72deg, rgba(255, 255, 255, 0.15) 85.5%, transparent 85.5%);
    position: absolute;
    top: auto;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.p-problems-solution:after {
    content: "";
    width: 67.733vw;
    height: 52.533vw;
	bottom: 0;
	right: 8;
	left: 0;
	margin: auto;
	z-index: 2;
}

}

/*----------------------------------------------------------------------------
 ご支援内容
----------------------------------------------------------------------------*/

.l-support {
	position: relative;
	padding-bottom: 48px;
}
.l-support:after {
	content: "";
	width: 100%;
	height: 310px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: var(--gradiant-bg);
}
.p-list-support {
	position: relative;
	padding: 40px;
	background: var(--white);
	box-shadow: 0px 0px 32px 0px rgba(0,0,0,0.16);
	gap: 80px;
	z-index: 1;
}
.p-list-support-item {
	position: relative;
	padding: 128px 0 0;
	width: 33%;
	background-repeat: no-repeat;
	background-size: 107px 103px;
	background-position: top center;
}
.p-list-support-item:nth-of-type(1) {
	background-image: url(../images/icon_support_01.png);
}
.p-list-support-item:nth-of-type(2) {
	background-image: url(../images/icon_support_02.png);
}
.p-list-support-item:nth-of-type(3) {
	background-image: url(../images/icon_support_03.png);
}
.p-list-support-item:nth-of-type(2):before,
.p-list-support-item:nth-of-type(2):after {
	content: "";
	width: 1px;
	height: 100%;
	background: var(--green);
	position: absolute;
	top: 0;
}
.p-list-support-item:nth-of-type(2):before {
	left: -40px;
}
.p-list-support-item:nth-of-type(2):after {
	right: -40px;
}
.p-support-item-term {
	margin-bottom: 24px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
}
.p-support-item-description {
	padding-left: 28px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	color: var(--dark-navy);
	background: url(../images/icon_check.png) no-repeat;
	background-size: 20px auto;
	background-position: top 0.2em left;
}
.p-support-item-description:not(:nth-last-of-type(1)) {
	margin-bottom: 8px;
}

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

.l-support {
	padding-bottom: 6.4vw;
}
.l-support:after {
	height: calc(100% - 52.266vw);
}
.p-list-support {
	padding: 7.333vw;
	gap: 21.333vw;
	flex-flow: column;
}
.p-list-support-item {
	width: 100%;
}
.p-list-support-item:nth-of-type(2):before,
.p-list-support-item:nth-of-type(2):after {
	content: "";
	width: 100%;
	height: 1px;
	top: auto;
}
.p-list-support-item:nth-of-type(2):before {
	left: auto;
	top: -10.666vw;
}
.p-list-support-item:nth-of-type(2):after {
	right: auto;
	bottom: -10.666vw;
}

.p-list-support-item-detail {
	margin: auto;
	width: 68vw;
}
.p-support-item-term {
	margin-bottom: 6.4vw;
	font-size: 5.866vw;
}
.p-support-item-description {
	font-size: 4.8vw;
}

}

/*----------------------------------------------------------------------------
 理由
----------------------------------------------------------------------------*/

.l-reason {
	padding: 120px 0 64px;
}
.l-content-reason {
	padding: 40px;
	background: var(--white);
	box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.16);
}
.p-reason-lead {
	margin: 0 0 24px;
	margin-right: -14px;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.75;
}
.p-target {
	width: 100%;
	margin: 0 auto 40px;
}
.p-heading-target-wrap {
	background-color: var(--green);
	display: flex;
	align-items: center;
}
.p-heading-target {
	position: relative;
	width: 355px;
	flex-basis: 355px;
	flex-shrink: 0;
	padding: 22px 48px 22px 147px;
	font-size: 2.0rem;
	font-weight: 700;;
	line-height: 1.4;
	color: var(--white);
	background-image: url(../images/icon_reason.png);
	background-repeat: no-repeat;
	background-size: 84px auto;
	background-position: center left 40px;
}
.p-heading-target:after {
	content: "";
	width: 56px;
	height: 59px;
	background-image: url(../images/icon_arrows.svg);
	background-size: cover;
	position: absolute;
	top: 50%;
	right: -30px;
	transform: translate(0,-50%) rotate(-90deg);
}
.p-list-target {
	width: 100%;
	padding: 15px 40px;
	border: 1px solid var(--gray-bg);
	border-left: none;
}
.p-list-target-item {
	position: relative;
	font-size: 2.0rem;
	line-height: 1.7;
}
.p-list-target-item:before {
	content: "・";
	position: relative;
}
.p-reason-description {
	gap:40px;
}
.p-reason-description-img {
	width: 296px;
	flex-basis: 296px;
	flex-shrink: 0;
}
.p-reason-description-txt {
	font-size: 1.8rem;
	line-height: 1.75;
}
.p-reason-description-txt a {
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
.l-reason {
	padding: 21.333vw 0 10.666vw;
}
.l-content-reason {
	padding: 6.4vw 5.333vw;
}
.p-reason-lead {
	margin: 0 0 4.266vw;
	font-size: 4.266vw;
}
.p-target {
	width: 100%;
	margin: 0 auto 6.4vw;
	flex-flow: column;
	align-items: unset;
}
.p-heading-target {
	position: relative;
	width: 100%;
	flex-basis: unset;
	flex-shrink: unset;
	padding: 3.733vw 8vw 3.733vw 32vw;
	font-size: 4.8vw;
	line-height: 1.3;
	background-size: 20vw auto;
	background-position: center left 5.866vw;
}
.p-heading-target:after {
	content: none;
}

.p-list-target {
	padding: 4.266vw;
	border: 1px solid var(--gray-bg);
	border-left: 1px solid var(--gray-bg);
	border-top: none;
}
.p-list-target-item {
	padding-left: 1.2em;
	font-size: 4.266vw;
	line-height: 1.75;
}
.p-list-target-item:before {
	content: "・";
	position: absolute;
	top: 0.2em;
	left: 0;
}
.p-reason-description {
	flex-flow: column;
	gap: 6.4vw;
}
.p-reason-description-img {
	width: 100%;
	flex-basis: unset;
	flex-shrink: unset;
}
.p-reason-description-txt {
	font-size: 4.266vw;
	text-wrap: wrap;
}
}

/*----------------------------------------------------------------------------
 CTA
----------------------------------------------------------------------------*/

.l-cta {
	position: relative;
	padding: 72px 0 56px;
	background: var(--gradiant-bg);
	overflow: hidden;
}
.l-cta:before {
	content: "";
	width: 92px;
	height: 47px;
	background-image: url(../images/img_polygon_white.png);
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.p-content-cta {
	position: relative;
	padding: 24px 100px 32px;
	text-align: center;
	background: var(--white);
	border-radius: 16px;
	box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.16);
}
.p-content-cta:after {
	content: "";
	width: 1066px;
	height: 187px;
	background: url(../images/img_deco_cta.png);
	background-size: cover;
	position: absolute;
	top: -30px;
	left: -64px;
}
.p-content-lead-cta {
	margin-bottom: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
	color: var(--dark-navy);
}
.p-btn-cta {
	position: relative;
	width: 100%;
	height: 72px;
	background: linear-gradient(90deg, #FB8E3F 0%, #F25A2A 100%);
	box-shadow: 0px 4px 0px 0px rgba(218, 53, 0, 1);
	border-radius: 40px;
	z-index: 1;
}
.c-btn-cta {
	width: 100%;
	height: 100%;
	font-size: 2.4rem;
	line-height: 1.6;
	font-weight: 700;
	color: var(--white);
	display: flex;
	align-items: center;
	justify-content: center;
}
.c-btn-cta:visited {
	color: var(--white);
}
.c-btn-cta span {
	padding-left: 40px;
	color: var(--white);
	background-image: url(../images/icon_mail.png);
	background-size: 32px auto;
	background-repeat: no-repeat;
	background-position: left center;
}

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

.l-cta {
	position: relative;
	padding: 10.666vw 0 10.666vw;
}
.l-cta:before {
	width: 14.933vw;
	height: 7.466vw;
}
.p-content-cta {
	padding: 5.333vw 5.333vw 8.533vw;
}

.p-content-cta:after {
	content: none;
}
.p-content-lead-cta {
	margin-bottom: 4.266vw;
	font-size: 4.266vw;
}
.p-btn-cta {
	height: 13.333vw;
}
.c-btn-cta {
	font-size: 4.8vw;
	line-height: 1.5;
}
.c-btn-cta span {
	padding-left: 10.666vw;
	background-size: 8.533vw auto;
}

}

/*----------------------------------------------------------------------------
 FLOAT CTA
----------------------------------------------------------------------------*/

.p-float-cta {
	padding: 0 20px;
	height: 77px;
	align-items: center;
	justify-content: center;
	gap: 16px;
	background: var(--white);
	position:fixed;
	bottom:-77px;
	left:0;
	right:0;
	margin:auto;
	z-index:1000;
}
.p-float-cta.l-fixed{
	bottom:0;
    transition: bottom 0.65s ease-in;
    -webkit-transition: bottom 0.65s ease-in;
    -moz-transition: bottom 0.65s ease-in;
}
.p-float-cta.is-hide {
	bottom: -77px;
}
.p-float-cta .p-content-lead-cta {
	margin-bottom: 0;
	font-size: 1.6rem;
	line-height: 1.5;
}
.p-float-cta .p-btn-cta {
	width: 512px;
	height: 48px;
}
.p-float-cta .c-btn-cta {
	font-size: 2.0rem;
}

@media screen and (max-width: 767px) {
.p-float-cta {
	padding: 0 5.333vw;
	height: 18.133vw;
	bottom: -18.133vw;
}

.p-float-cta.is-hide {
	bottom: -18.133vw;
}
.p-float-cta .p-btn-cta {
	width: 79.466vw;
	height: 10.666vw;
}
.p-float-cta .c-btn-cta {
	font-size: 4.266vw;
}
}














