@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
:root {
--white:#fff;
--gray:#616161;
--lightGray:#fafafa;
--black:#333;
--green:#0fac6f;
--lightGreen:#ecf6f3;
--darkGreen:#0d8053;
--pink:#ff2e93;
--darkPink:#cc2576;
--yellow:#ffe600;
--darkYellow:#9dc713;
--line:#e5f4ef;
--darkLine:#078c59
}
body, dd, dl, dt, figure, form, h1, h2, h3, h4, h5, h6, ol, p, ul {
	margin: 0;
	padding: 0
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal
}
strong {
	font-weight: normal
}
table, tbody, td, th, thead, tr {
	border: none
}
table th {
	text-align: left;
	font-weight: normal
}
table {
	border-collapse: collapse
}
ol, ul {
	list-style: none
}
a {
	text-decoration: none
}
a img {
	border: none
}
img {
	vertical-align: bottom
}
textarea {
	font-size: 1em;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-webkit-box-shadow: none;
	box-shadow: none
}
select {
	font-size: 1em;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-box-shadow: none;
	box-shadow: none
}
select::-ms-expand {
display:none
}
figcaption, figure, footer, header, main, nav, section, small, time {
	display: block
}
input[type=image], input[type=submit] {
	border: none;
	padding: 0
}
input[type=email], input[type=number], input[type=password], input[type=tel], input[type=text] {
	outline: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none
}
input[type=number] {
	-moz-appearance: textfield
}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
appearance:none;
-webkit-appearance:none;
-moz-appearance:none;
margin:0
}
button {
	border: none;
	margin: 0;
	cursor: pointer
}
input[type=image], input[type=reset], input[type=submit] {
	cursor: pointer
}
address {
	font-style: normal
}
button, input, select, textarea {
	font-family: inherit;
	font-weight: inherit;
	line-height: inherit;
	font-size: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	outline: none
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
color:#999
}
input::-moz-placeholder, textarea::-moz-placeholder {
color:#999
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
color:#999
}
input::-ms-input-placeholder, textarea::-ms-input-placeholder {
color:#999
}
input::placeholder, textarea::placeholder {
color:#999
}
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
html {
	font-size: 62.5%
}
body {
	font-size: 18px;
	font-size: 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	line-height: 1.4;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.04em;
	color: var(--black);
	position: relative
}
a {
	color: var(--black)
}
@media screen and (min-width:1025px) {
a {
	-webkit-transition: 0.5s cubic-bezier(0, 0.58, 0.38, 1);
	transition: 0.5s cubic-bezier(0, 0.58, 0.38, 1)
}
}
img {
	max-width: 100%;
	height: auto
}
.header {
	background: var(--black);
	padding: 13px 40px
}
@media screen and (max-width:768px) {
.header {
	padding: 15px
}
}
.header__inner img {
	width: 230px
}
@media screen and (max-width:768px) {
.header__inner img {
	width: 200px
}
}
.footer {
	background: var(--black);
	color: var(--white);
	font-size: 14px;
	font-size: 1.4rem;
	padding-bottom: 90px
}
@media screen and (max-width:768px) {
.footer {
	padding-bottom: 65px
}
}
.footer__upper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 0 40px;
	padding: 75px 120px 45px
}
@media screen and (max-width:768px) {
.footer__upper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 35px 0;
	padding: 60px 15px
}
}
.footer__upper__caution {
	width: 56%
}
@media screen and (max-width:768px) {
.footer__upper__caution {
	width: 100%
}
}
.footer__upper__caution .title {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold
}
.footer__upper__caution .text {
	margin-top: 20px
}
.footer__upper__outline {
	background: var(--gray);
	border-radius: 6px;
	padding: 62px 40px 38px;
	width: 40%
}
@media screen and (max-width:768px) {
.footer__upper__outline {
	padding: 45px 15px 15px;
	width: 100%
}
}
.footer__upper__outline .logo {
	text-align: center
}
.footer__upper__outline .detail {
	margin-top: 40px
}
.footer__upper__outline .detail__content__list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 8px
}
.footer__upper__outline .detail__content__list li:nth-child(n+2) {
	margin-top: 5px
}
.footer__upper__outline .detail__content__list li .title {
	position: relative;
	width: 75px
}
.footer__upper__outline .detail__content__list li .title:after {
	content: "：";
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0
}
.footer__upper__outline .detail__content__list li .text {
	width: calc(100% - 80px)
}
.footer__under {
	border-top: 1px solid var(--gray);
	font-size: 12px;
	font-size: 1.2rem;
	padding: 20px 120px;
	text-align: center
}
@media screen and (max-width:768px) {
.footer__under {
	padding: 20px
}
}
@media screen and (min-width:1025px) {
.modBpPc {
	display: inherit
}
}
@media screen and (max-width:768px) {
.modBpPc {
	display: none
}
}
@media screen and (min-width:1025px) {
.modBpPc--inline {
	display: inline
}
}
@media screen and (max-width:768px) and (min-width:1024px) {
.modBpPc--spTablet {
	display: none
}
}
@media screen and (min-width:1025px) {
.modBpSp {
	display: none
}
}
@media screen and (max-width:768px) {
.modBpSp {
	display: inherit
}
}
@media screen and (max-width:768px) {
.modBpSp--inline {
	display: inline
}
}
@media screen and (max-width:768px) and (min-width:1024px) {
.modBpSp--spTablet {
	display: inherit
}
}
.modBpTablet {
	display: none
}
@media screen and (max-width:767px) {
.modBpTablet {
	display: block
}
}
.modCta {
	background: url(../img/bg_cta.png) no-repeat center center;
	background-size: cover
}
.modCta__inner {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	max-width: 1200px;
	padding: 80px 0 100px;
	margin: 0 auto
}
@media screen and (max-width:1200px) {
.modCta__inner {
	padding: 60px 15px
}
}
@media screen and (min-width:1200px) {
.modCta__inner:before {
	content: "";
	display: block;
	position: absolute;
	background: url(../../assets/img/img_cta_left.png) no-repeat center center;
	background-size: 100%;
	left: -33px;
	bottom: 55px;
	width: 150px;
	height: 217px;
	-webkit-transform: rotate(-6deg);
	transform: rotate(-6deg)
}
}
@media screen and (min-width:1200px) and (max-width:768px) {
.modCta__inner:before {
	content: none
}
}
@media screen and (min-width:1200px) {
.modCta__inner:after {
	content: "";
	display: block;
	position: absolute;
	background: url(../../assets/img/img_cta_right.png) no-repeat center center;
	background-size: 100%;
	right: -52px;
	bottom: 55px;
	width: 201px;
	height: 217px;
	-webkit-transform: rotate(9deg);
	transform: rotate(9deg)
}
}
@media screen and (min-width:1200px) and (max-width:768px) {
.modCta__inner:after {
	content: none
}
}
@media screen and (max-width:768px) {
.modCta__inner {
	padding: 70px 15px 75px
}
}
.modCta__btn {
	margin-top: -78px
}
@media screen and (min-width:1200px) {
.modCta__btn.modBtn {
	padding: 15px 140px 15px 88px
}
}
@media screen and (max-width:1200px) {
.modCta__btn {
	padding: 0 15px;
	width: 100%;
	max-width: 762px
}
}
@media screen and (max-width:768px) {
.modCta__btn {
	margin-top: -16px;
	padding: 9px 40px 13px 24px
}
}
.modCta__btn .smallText {
	display: inline
}
.modCta__text {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	font-size: 16px;
	font-size: 1.6rem
}
.modCta--simple {
	background: var(--lightGreen);
	text-align: center;
	padding: 30px 0 35px
}
@media screen and (max-width:768px) {
.modCta--simple {
	padding: 30px 15px 35px
}
}
.modCta--simple .modCta__text {
	position: relative;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	display: block;
	max-width: -webkit-fit-content;
	max-width: -moz-fit-content;
	max-width: fit-content;
	margin: 0 auto
}
@media screen and (max-width:768px) {
.modCta--simple .modCta__text {
	font-size: 16px;
	font-size: 1.6rem
}
}
.modCta--simple .modCta__text:after, .modCta--simple .modCta__text:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	background: url(../../assets/img/deco_line.png) no-repeat center center;
	background-size: 100% auto;
	width: 33px;
	height: 32px
}
@media screen and (max-width:768px) {
.modCta--simple .modCta__text:after, .modCta--simple .modCta__text:before {
	width: 20px;
	height: 18px
}
}
.modCta--simple .modCta__text:before {
	left: -40px
}
.modCta--simple .modCta__text:after {
	right: -40px;
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1)
}
.modCta--simple .modBtn {
	margin-top: 10px
}
.modCta--fixed {
	position: fixed;
	left: 0;
	bottom: 0;
	background: rgba(236,246,242,0.64);
	width: 100%;
	padding: 0 15px 7px;
	text-align: center;
	z-index: 10;
	display: none
}
.modCta--fixed.is-active {
	display: block
}
@media screen and (max-width:768px) {
.modCta--fixed {
	background: none;
	margin: 0;
	padding: 0
}
}
.modCta--fixed .modBtn {
	font-size: 20px;
	font-size: 2rem;
	margin: 10px auto;
	-webkit-box-shadow: 0 7px 0 var(--darkPink);
	box-shadow: 0 7px 0 var(--darkPink);
	padding: 12px 60px 12px 36px;
	letter-spacing: 0.1em
}
@media screen and (max-width:768px) {
.modCta--fixed .modBtn {
	margin: 0;
	border-radius: 20px 20px 0 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	font-size: 23px;
	font-size: 2.3rem
}
}
.modCta--fixed .modBtn:after {
	right: 18px
}
@media screen and (max-width:768px) {
.modCta--fixed .modBtn:after {
	top: 23px;
	right: 30px
}
}
@media screen and (max-width:768px) {
.modCta--fixed .modBtn .spText {
	top: -10px;
	left: 17px
}
}
.modCta--fixed .modBtn .large {
	font-size: 28px;
	font-size: 2.8rem;
	margin-left: 0;
	margin-right: 10px
}
.modListStrength {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 30px 0;
	margin-top: 40px
}
@media screen and (max-width:1200px) {
.modListStrength {
	margin: 0 15px
}
}
@media screen and (max-width:768px) {
.modListStrength {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0;
	gap: 28px 0
}
}
.modListStrength__item {
	position: relative;
	background: var(--white);
	border-radius: 16px;
	-webkit-box-shadow: 0 12px 0 #d8e6e1;
	box-shadow: 0 12px 0 #d8e6e1;
	text-align: center;
	padding-bottom: 28px;
	width: calc(33.3333333333% - 15px);
	max-width: 379px
}
@media screen and (min-width:1025px) {
.modListStrength__item {
	-webkit-transition: 0.5s cubic-bezier(0, 0.58, 0.38, 1);
	transition: 0.5s cubic-bezier(0, 0.58, 0.38, 1)
}
}
@media screen and (max-width:768px) {
.modListStrength__item {
	width: 100%;
	padding-bottom: 20px
}
}
.modListStrength__item:hover {
	-webkit-transform: translateY(12px);
	transform: translateY(12px);
	-webkit-box-shadow: none;
	box-shadow: none
}
.modListStrength__item:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: 17px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #d8e6e1;
	-webkit-mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%, 100%;
	mask-size: 100%, 100%;
	width: 24px;
	height: 15px
}
.modListStrength__item__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	padding: 16px 15px 10px;
	height: 100%
}
@media screen and (max-width:768px) {
.modListStrength__item__inner {
	padding-top: 20px
}
}
.modListStrength__item__num {
	display: inline-block;
	font-weight: bold;
	font-family: "Barlow", sans-serif;
	background: url(../../assets/img/bg_ribbon_strength.svg) no-repeat center center;
	background-size: 140px 59px;
	width: 140px;
	height: 59px;
	line-height: 43px
}
@media screen and (min-width:1025px) {
.modListStrength__item__num {
	font-size: 32px;
	font-size: 3.2rem
}
}
@media screen and (max-width:768px) {
.modListStrength__item__num {
	font-size: 24px;
	font-size: 2.4rem;
	background-size: 110px 45px;
	width: 110px;
	height: 45px;
	line-height: 32px
}
}
.modListStrength__item__title {
	font-weight: bold;
	line-height: 1.4;
	margin: 15px 0 0;
	letter-spacing: -1.5px;
	font-size: 32px;
	font-size: 3.2rem
}
.modListStrength__item__title .emp {
	color: var(--pink);
	font-size: 36px;
	font-size: 3.6rem
}
@media screen and (max-width:768px) {
.modListStrength__item__title {
	letter-spacing: 0.01em;
	line-height: 1.4;
	margin: 10px 0 0;
	font-size: 24px;
	font-size: 2.4rem
}
.modListStrength__item__title .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.modListStrength__item__title .en {
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
.modListStrength__item__title .iconCross {
	display: block;
	line-height: 1;
	margin: -10px 0
}
@media screen and (max-width:768px) {
.modListStrength__item__title .iconCross {
	line-height: 28px
}
}
@media screen and (max-width:768px) {
.modListStrength__item__title {
	margin: 8px 0
}
}
.modListCaution__item {
	font-size: 12px;
	font-size: 1.2rem;
	color: #222;
	padding-left: 1em;
	text-indent: -1em;
	line-height: 21px
}
@media screen and (max-width:768px) {
.modListCaution__item {
	line-height: 1.75
}
}
@media screen and (max-width:768px) {
.modListCaution__item:nth-child(n+2) {
	margin-top: 8px
}
}
.modListCaution__item a {
	text-decoration: underline
}
.modListToc {
	width: 100%
}
.modListToc__item:nth-child(n+2) {
	margin-top: 16px
}
@media screen and (max-width:768px) {
.modListToc__item:nth-child(n+2) {
	margin-top: 12px
}
}
.modListToc__item__link {
	position: relative;
	display: block;
	border: 2px solid var(--white);
	border-radius: 50px;
	color: var(--white);
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	padding: 20px 40px 20px 20px
}
@media screen and (max-width:768px) {
.modListToc__item__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 10px;
	padding: 10px 40px 10px 20px;
	border-radius: 45px;
	font-size: 16px;
	font-size: 1.6rem
}
}
.modListToc__item__link:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background-color: var(--white);
	-webkit-mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%, 100%;
	mask-size: 100%, 100%;
	width: 15px;
	height: 24px
}
@media screen and (max-width:768px) {
.modListToc__item__link:after {
	right: 20px;
	width: 19px;
	height: 28px
}
}
.modListToc__item__link:hover {
	border-color: var(--white);
	background: var(--white);
	color: var(--green)
}
.modListToc__item__link:hover:after {
	background-color: var(--green)
}
@media screen and (max-width:768px) {
.modListToc__item__link .text {
	letter-spacing: -0.01em
}
}
@media screen and (min-width:768px) {
.modListToc__item__link .modBpSp {
	display: none!important
}
}
@media screen and (max-width:767px) {
.modListToc__item__link .modBpSp {
	display: block!important
}
}
.modListPoint {
	margin-top: 90px
}
@media screen and (max-width:768px) {
.modListPoint {
	margin-top: 0
}
}
.modListPoint__item {
	position: relative
}
.modListPoint__item__inner {
	background: var(--white);
	border-radius: 8px;
	padding: 34px 24px 16px;
	position: relative
}
@media screen and (max-width:768px) {
.modListPoint__item__inner {
	padding: 42px 16px 46px
}
}
@media screen and (max-width:768px) {
.modListPoint__item__inner .modSection__title {
	margin-bottom: 40px!important
}
}
@media screen and (max-width:768px) {
.modListPoint__item .modTitleType04 {
	font-size: 28px;
	font-size: 2.8rem
}
.modListPoint__item .modTitleType04 .emp {
	font-size: 32px;
	font-size: 3.2rem
}
}
.modListPoint__item:nth-child(n+2) {
	margin-top: 55px
}
@media screen and (min-width:1025px) {
.modListPoint__item:first-child .modListPoint__item__img>div:first-child picture {
	width: 69%;
	margin: 3.8% 15% 0 auto
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:first-child .modListPoint__item__img>div:nth-child(2) picture {
	width: 89%;
	margin: 7% 2% 0 auto
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:first-child .modListPoint__item__img>div:nth-child(3) picture {
	width: 81.5%;
	margin: 2% 0 0 12%
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(2) .modListPoint__item__inner {
	padding-bottom: 21.5px
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(2) .modListPoint__item__img>div:first-child picture {
	width: 82%;
	margin: 3% 0 0 7.5%
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(2) .modListPoint__item__img>div:nth-child(2) picture {
	width: 89%;
	margin: 4% 2% 0 auto
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(2) .modListPoint__item__img>div:nth-child(3) picture {
	width: 88%;
	margin: 7.5% 0 0 10%
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(3) .modListPoint__item__img>div:first-child picture {
	width: 82%;
	margin: 3% 0 0 8.5%
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(3) .modListPoint__item__img>div:nth-child(2) picture {
	width: 84%;
	margin: 4% 10% 0 auto
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(3) .modListPoint__item__img>div:nth-child(3) picture {
	width: 89%;
	margin: 1.5% 0 0 10%
}
}
.modListPoint__item:nth-child(4) .modListPoint__item__img>div p {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(4) .modListPoint__item__img>div:first-child picture {
	min-width: 50%;
	max-width: 50%;
	margin: 0 3.5% 0 8px
}
}
.modListPoint__item:nth-child(4) .modListPoint__item__img>div:nth-child(2) {
	border-right: none
}
@media screen and (max-width:768px) {
.modListPoint__item:nth-child(4) .modListPoint__item__img>div:nth-child(2) {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0
}
}
@media screen and (min-width:1025px) {
.modListPoint__item:nth-child(4) .modListPoint__item__img>div:nth-child(2) picture {
	max-width: 48%;
	min-width: 48%;
	-webkit-transform: translate(-4px, 0px);
	transform: translate(-4px, 0px)
}
}
@media screen and (min-width:1025px) {
.modListPoint__item--2col .modListPoint__item__img>div {
	width: 50%!important;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 18px
}
}
.modListPoint__item--2col .modListPoint__item__img>div p {
	line-height: 30px
}
@media screen and (min-width:1025px) {
.modListPoint__item--2col .modListPoint__item__img>div p {
	margin: 0 0 10px auto;
	text-align: left;
	max-width: -webkit-fit-content;
	max-width: -moz-fit-content;
	max-width: fit-content
}
}
.modListPoint__item--2col .modSection__title {
	margin-bottom: 30px!important
}
.modListPoint__item__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}
@media screen and (max-width:1200px) {
.modListPoint__item__img {
	gap: 10px
}
}
@media screen and (max-width:768px) {
.modListPoint__item__img {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}
}
@media screen and (min-width:1025px) {
.modListPoint__item__img>div {
	width: 33.33%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	position: relative
}
}
@media screen and (min-width:1025px) {
.modListPoint__item__img>div:nth-child(2) {
	width: 37%;
	border-right: solid 1px var(--lightGreen);
	border-left: solid 1px var(--lightGreen)
}
}
@media screen and (max-width:768px) {
.modListPoint__item__img>div:nth-child(2) {
	border-top: 2px solid var(--lightGreen);
	border-bottom: 2px solid var(--lightGreen);
	margin: 35px 0;
	padding: 35px 0
}
}
.modListPoint__item__img>div p {
	text-align: center;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 26px
}
.modListPoint__item__img>div p .emp {
	color: var(--green);
	font-size: 24px;
	font-size: 2.4rem
}
@media screen and (max-width:768px) {
.modListPoint__item__img>div p {
	font-size: 16px;
	font-size: 1.6rem;
	margin-bottom: 10px
}
}
@media screen and (max-width:768px) {
.modListPoint__item__img>div p .emp {
	font-size: 20px;
	font-size: 2rem
}
}
.modListPoint__item__img>div picture {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}
@media screen and (max-width:768px) {
.modListPoint__item__img>div picture img {
	margin: 0 auto
}
}
.modListPoint__item__img .emp {
	color: var(--green)
}
.modListTool {
	background: var(--white);
	border-radius: 8px;
	padding: 0 25px
}
@media screen and (min-width:767px) and (max-width:1023px) {
.modListTool {
	max-width: 50%;
	margin: 24px auto 0
}
}
@media screen and (max-width:768px) {
.modListTool {
	margin: 24px auto 0;
	padding: 0 8px
}
}
.modListTool__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 20px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 25px 20px
}
.modListTool__item:nth-child(n+2) {
	border-top: 1px solid #e7f4ed
}
.modListTool__item .emp {
	color: var(--green);
	font-size: 20px;
	font-size: 2rem
}
@media screen and (max-width:768px) {
.modListTool__item {
	padding: 25px 10px;
	gap: 0 35px
}
.modListTool__item:nth-child(n+2) {
	padding: 20px 10px
}
.modListTool__item:last-child {
	padding: 20px 10px 25px
}
.modListTool__item .emp {
	color: var(--green);
	font-size: 16px;
	font-size: 1.6rem
}
}
.modListTool__item__icon {
	width: 55px;
	text-align: center
}
@media screen and (max-width:768px) {
.modListTool__item__icon {
	width: 54px
}
.modListTool__item__icon img {
	width: 100%;
	height: auto
}
}
@media screen and (max-width:768px) {
.modListTool__item__text {
	width: calc(100% - 89px);
	line-height: 1.5
}
}
.modListEnvironment {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 32px
}
@media screen and (max-width:1230px) {
.modListEnvironment {
	padding: 0 15px
}
}
@media screen and (max-width:768px) {
.modListEnvironment {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 0;
	gap: 16px 0;
	margin: 0 auto
}
}
@media screen and (min-width:767px) and (max-width:1000px) {
.modListEnvironment {
	max-width: 50%
}
}
.modListEnvironment__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 0 20px;
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	background: var(--white);
	border-radius: 8px;
	padding: 30px 60px 30px 70px;
	width: calc(50% - 16px)
}
.modListEnvironment__item .emp {
	color: var(--green);
	font-size: 24px;
	font-size: 2.4rem
}
@media screen and (max-width:768px) {
.modListEnvironment__item {
	width: 100%;
	padding: 22px 10px 22px 35px;
	gap: 0 30px;
	font-size: 16px;
	font-size: 1.6rem
}
.modListEnvironment__item .emp {
	color: var(--green);
	font-size: 20px;
	font-size: 2rem
}
}
.modListEnvironment__item__icon {
	width: 80px;
	text-align: center
}
@media screen and (max-width:768px) {
.modListEnvironment__item__icon {
	width: 56px
}
}
.modListEnvironment__item__icon img {
	width: 100%;
	height: auto
}
.modListEnvironment__item__text {
	width: calc(100% - 100px);
	text-align: center
}
@media screen and (max-width:768px) {
.modListEnvironment__item__text {
	width: calc(100% - 86px);
	letter-spacing: -0.01em;
	text-align: left
}
}
.modListEnvironment__item__text .en {
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
.modListVoice {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.modListVoice:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -124px;
	left: 0;
	background: var(--green) url(../../assets/img/bg_voice04.png) no-repeat right bottom;
	background-size: 100% auto;
	width: 1592px;
	height: 390px
}
@media screen and (max-width:768px) {
.modListVoice:after {
	content: none
}
}
@media screen and (min-width:767px) and (max-width:1230px) {
.modListVoice:before {
	content: "";
	display: block;
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	height: 30px;
	background: var(--green);
	z-index: 1
}
}
@media screen and (max-width:1230px) {
.modListVoice {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0 15px;
	gap: 60px
}
.modListVoice:after {
	content: none
}
}
@media screen and (max-width:768px) {
.modListVoice {
	gap: 60px 0;
	padding: 0
}
.modListVoice:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: auto;
	right: -15px;
	background: #078c59;
	width: 50px;
	height: 40px;
	-webkit-transform: skewX(45deg);
	transform: skewX(45deg)
}
.modListVoice:after {
	content: "";
	display: block;
	position: absolute;
	left: auto;
	top: 20px;
	right: -15px;
	bottom: auto;
	background: #078c59;
	width: 20px;
	height: 100vw
}
}
@media screen and (max-width:768px) {
.modListVoice__wrapper {
	overflow: hidden;
	margin: 0 -15px;
	padding: 0 15px 60px
}
}
.modListVoice__item {
	position: relative;
	width: calc(33.3333333333% - 15px);
	gap: 30px;
	width: 380px;
	height: auto
}
@media screen and (max-width:768px) {
.modListVoice__item {
	width: 100%;
	padding: 0 0 20px
}
}
.modListVoice__item__inner {
	position: relative;
	border-radius: 8px;
	padding: 30px;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: var(--white)
}
@media screen and (min-width:1200px) {
.modListVoice__item__inner {
	background: transparent
}
}
.modListVoice__item:before {
	content: "";
	height: auto;
	aspect-ratio: 779/663;
	position: absolute;
	z-index: 0
}
@media screen and (max-width:768px) {
.modListVoice__item:before {
	aspect-ratio: 729/634;
	background: url(../../assets/img/sp/bg_voice.png) no-repeat left bottom;
	background-size: contain;
	width: 167%;
	left: 0;
	bottom: 0;
	-webkit-transform: translate(0, 57%);
	transform: translate(0, 57%)
}
}
@media screen and (min-width:767px) and (max-width:1230px) {
.modListVoice__item:before {
	width: 205%;
	height: auto;
	aspect-ratio: 779/663;
	background: url(../../assets/img/bg_voice.png) no-repeat left bottom;
	background-size: contain;
	position: absolute;
	left: 0px;
	bottom: 0;
	-webkit-transform: translate(0px, 60%);
	transform: translate(0px, 60%)
}
}
@media screen and (max-width:768px) {
.modListVoice__item:first-child:after {
	content: "";
	display: block;
	position: absolute;
	top: -50px;
	left: 0;
	width: 100%;
	height: 50px;
	background: var(--green);
	z-index: 1
}
}
@media screen and (min-width:1025px) {
.modListVoice__item:first-child .modListVoice__item__person {
	right: -12px
}
}
@media screen and (min-width:1025px) {
.modListVoice__item:nth-child(2) .modListVoice__item__person {
	right: 5px
}
}
@media screen and (max-width:768px) {
.modListVoice__item:last-child:before {
	width: 167%;
	left: 0;
	bottom: 0;
	-webkit-transform: translate(0, 57%);
	transform: translate(0, 57%)
}
}
.modListVoice__item__title {
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 30px;
	text-align: center;
	letter-spacing: -0.01em
}
@media screen and (max-width:768px) {
.modListVoice__item__title {
	margin-bottom: 20px;
	font-size: 20px;
	font-size: 2rem
}
}
.modListVoice__item__text {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8
}
.modListVoice__item__person {
	position: absolute;
	right: 0;
	bottom: -80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	z-index: 5
}
@media screen and (max-width:768px) {
.modListVoice__item__person {
	bottom: -60px
}
}
.modListVoice__item__person .name {
	color: var(--white);
	font-size: 16px;
	font-size: 1.6rem;
	margin-bottom: 40px
}
@media screen and (max-width:768px) {
.modListVoice__item__person .name {
	margin-bottom: 20px
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--01 {
	right: -15px;
	bottom: -80px
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--01 .name {
	margin: 0 20px 40px 0
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--02 {
	right: -5px;
	bottom: -80px
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--02 .name {
	margin: 0 15px 40px 0
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--03 {
	right: 10px;
	bottom: -80px
}
.modListVoice__item__person--03 img {
	width: 80px;
	height: auto
}
}
@media screen and (max-width:768px) {
.modListVoice__item__person--03 .name {
	margin: 0 15px 40px 0
}
}
.modListRibbon__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 20px;
	border-top: 2px solid var(--white);
	padding: 16px 0
}
@media screen and (max-width:768px) {
.modListRibbon__item {
	gap: 0 12px;
	padding: 22px 0
}
}
.modListRibbon__item__icon {
	position: relative
}
.modListRibbon__item__icon .ribbon {
	width: 49px;
	height: 32px
}
@media screen and (max-width:768px) {
.modListRibbon__item__icon .ribbon {
	width: 36px;
	height: auto
}
}
.modListRibbon__item__icon .num {
	position: absolute;
	top: 50%;
	left: 11px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 24px;
	font-size: 2.4rem;
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
@media screen and (max-width:768px) {
.modListRibbon__item__icon .num {
	left: 7px;
	font-size: 16px;
	font-size: 1.6rem
}
}
.modListRibbon__item__text {
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem
}
.modListRibbon__item__text .emp {
	color: var(--green);
	font-size: 24px;
	font-size: 2.4rem
}
@media screen and (max-width:768px) {
.modListRibbon__item__text {
	letter-spacing: -0.01em;
	font-size: 16px;
	font-size: 1.6rem
}
.modListRibbon__item__text .emp {
	color: var(--green);
	font-size: 20px;
	font-size: 2rem
}
}
.modListMerit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 0 32px
}
@media screen and (min-width:767px) and (max-width:819px) {
.modListMerit {
	max-width: 50%;
	margin: 0 auto
}
}
@media screen and (max-width:768px) {
.modListMerit {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 32px 0
}
}
.modListMerit__item {
	text-align: center;
	width: calc(33.3333333333% - 24px)
}
@media screen and (max-width:768px) {
.modListMerit__item {
	width: 100%
}
}
.modListMerit__item__inner {
	background: var(--white);
	border-radius: 8px;
	padding: 40px 30px;
	height: 260px
}
@media screen and (max-width:768px) {
.modListMerit__item__inner {
	padding: 30px 15px;
	height: auto
}
}
.modListMerit__item__title {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 42px
}
@media screen and (max-width:768px) {
.modListMerit__item__title {
	margin-bottom: 26px
}
}
.modListMerit__item__note {
	font-size: 12px;
	font-size: 1.2rem;
	color: #222;
	text-align: left;
	margin-top: 10px;
	text-indent: -1em;
	padding-left: 1em
}
.modListMerit__item .smbc {
	margin-top: -10px
}
@media screen and (max-width:768px) {
.modListMerit__item .smbc {
	margin-top: 0
}
}
.modListStep {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 0 32px
}
@media screen and (min-width:767px) and (max-width:819px) {
.modListStep {
	max-width: 50%;
	margin: 0 auto
}
}
@media screen and (max-width:768px) {
.modListStep {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 60px 0
}
}
.modListStep.is-act li:first-child {
	-webkit-animation: step 0.3s ease 0.3s 1 forwards;
	animation: step 0.3s ease 0.3s 1 forwards
}
.modListStep.is-act li:nth-child(2) {
	-webkit-animation: step 0.3s ease 0.6s 1 forwards;
	animation: step 0.3s ease 0.6s 1 forwards
}
.modListStep.is-act li:nth-child(3) {
	-webkit-animation: step 0.3s ease 0.9s 1 forwards;
	animation: step 0.3s ease 0.9s 1 forwards
}
.modListStep.is-act li:nth-child(4) {
	-webkit-animation: step 0.3s ease 1.2s 1 forwards;
	animation: step 0.3s ease 1.2s 1 forwards
}
.modListStep__item {
	position: relative;
	text-align: center;
	width: calc(25% - 8px);
	opacity: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}
@media screen and (max-width:768px) {
.modListStep__item {
	width: 100%
}
}
@-webkit-keyframes step {
to {
opacity:1
}
}
@keyframes step {
to {
opacity:1
}
}
.modListStep__item:not(:last-child) .modListStep__item__inner:after {
	content: "";
	display: block;
	position: absolute;
	background-color: var(--darkGreen);
	-webkit-mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	mask-image: url(../../assets/img/icon_arrow_anchor.svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%, 100%;
	mask-size: 100%, 100%
}
@media screen and (min-width:1025px) {
.modListStep__item:not(:last-child) .modListStep__item__inner:after {
	top: 50%;
	right: -23px;
	width: 15px;
	height: 24px;
	-webkit-transform: translateY(-50%) rotate(-90deg);
	transform: translateY(-50%) rotate(-90deg)
}
}
@media screen and (max-width:768px) {
.modListStep__item:not(:last-child) .modListStep__item__inner:after {
	bottom: -40px;
	left: 50%;
	width: 24px;
	height: 14px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%)
}
}
.modListStep__item__inner {
	background: var(--white);
	border-radius: 8px;
	padding: 20px 15px;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1
}
@media screen and (max-width:768px) {
.modListStep__item__inner {
	padding: 10px 15px
}
}
.modListStep__item__step {
	line-height: 1;
	margin-bottom: 35px;
	font-size: 20px;
	font-size: 2rem;
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
@media screen and (max-width:768px) {
.modListStep__item__step {
	font-size: 24px;
	font-size: 2.4rem;
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--yellow)));
	background: linear-gradient(transparent 60%, var(--yellow) 60%)
}
}
.modListStep__item__step .num {
	font-size: 48px;
	font-size: 4.8rem
}
@media screen and (min-width:1025px) {
.modListStep__item__step .num {
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--yellow)));
	background: linear-gradient(transparent 60%, var(--yellow) 60%)
}
}
@media screen and (max-width:768px) {
.modListStep__item__step .num {
	font-size: 24px;
	font-size: 2.4rem
}
}
@media screen and (max-width:768px) {
.modListStep__item__icon {
	margin-top: 20px
}
.modListStep__item__icon img {
	width: 72px
}
}
.modListStep__item__title {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	margin-top: 30px
}
@media screen and (min-width:1025px) {
.modListStep__item__title {
	letter-spacing: -0.06em;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1
}
}
@media screen and (max-width:768px) {
.modListStep__item__title {
	margin-top: 18px
}
}
.modListStep__item__note {
	display: none;
	font-size: 12px;
	font-size: 1.2rem;
	color: #222;
	text-align: left;
	margin-top: 10px;
	text-indent: -1em;
	padding-left: 1em
}
@media screen and (max-width:768px) {
.modListStep__item__note {
	display: block
}
}
.modListFaq__item:nth-child(n+2) {
	margin-top: 16px
}
.modListFaq__item__answer, .modListFaq__item__question {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 40px;
	padding: 25px 50px 25px 25px
}
@media screen and (max-width:768px) {
.modListFaq__item__answer, .modListFaq__item__question {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 0 16px;
	padding: 15px 40px 10px 15px
}
}
.modListFaq__item__question {
	position: relative;
	font-weight: bold;
	font-size: 20px;
	font-size: 2rem;
	background: #e5f4ef;
	border-radius: 8px;
	line-height: 1.8;
	cursor: pointer
}
@media screen and (max-width:768px) {
.modListFaq__item__question {
	font-size: 16px;
	font-size: 1.6rem
}
}
.modListFaq__item__question .iconQ {
	display: block
}
.modListFaq__item__question .iconQ img {
	width: 20px;
	height: 26px
}
@media screen and (max-width:768px) {
.modListFaq__item__question .iconQ img {
	width: 18px;
	height: 21px
}
}
.modListFaq__item__question .text {
	width: calc(100% - 60px)
}
@media screen and (max-width:768px) {
.modListFaq__item__question .text {
	width: calc(100% - 18px)
}
}
.modListFaq__item__question .iconToggle {
	position: absolute;
	top: 50%;
	right: 37px;
	margin-top: -12px
}
@media screen and (max-width:768px) {
.modListFaq__item__question .iconToggle {
	right: 0
}
}
.modListFaq__item__question .iconToggle:after, .modListFaq__item__question .iconToggle:before {
	content: "";
	position: absolute;
	display: block;
	width: 4px;
	height: 24px;
	background: #000
}
@media screen and (max-width:768px) {
.modListFaq__item__question .iconToggle:after, .modListFaq__item__question .iconToggle:before {
	width: 2px;
	height: 16px;
	right: 25px
}
}
.modListFaq__item__question .iconToggle:after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg)
}
.modListFaq__item__question.is-open {
	border-radius: 8px 8px 0 0
}
.modListFaq__item__question.is-open .iconToggle:before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg)
}
.modListFaq__item__answer {
	font-size: 16px;
	font-size: 1.6rem;
	background: var(--white);
	border-radius: 0 0 8px 8px;
	padding: 25px 25px
}
@media screen and (max-width:768px) {
.modListFaq__item__answer {
	padding: 15px
}
}
.modListFaq__item__answerWrapper {
	display: none
}
.modListFaq__item__answer .iconA {
	display: block;
	width: 22px
}
.modListFaq__item__answer .iconA img {
	width: 22px;
	height: 22px
}
@media screen and (max-width:768px) {
.modListFaq__item__answer .iconA img {
	width: 17px;
	height: 20px
}
}
.modListFaq__item__answer .text {
	width: calc(100% - 38px);
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict
}
@media screen and (max-width:768px) {
.modListFaq__item__answer .text {
	width: calc(100% - 17px);
	line-height: 1.8
}
}
.modListFaq__item__answer .text a {
	text-decoration: underline
}
.modBtn {
	position: relative;
	display: inline-block;
	background: var(--pink);
	color: var(--white);
	border-radius: 55px;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
	font-size: 35px;
	font-size: 3.5rem;
	-webkit-box-shadow: 0 12px 0 var(--darkPink);
	box-shadow: 0 12px 0 var(--darkPink);
	padding: 5px 100px 5px 62px
}
.modBtn2 {
	background-color: #ff69b4; /* ピンク色 */
	color: white;
	border: none;
	border-radius: 30px; /* 丸みのある角 */
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	width: 50%;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 24px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width:768px) {
.modBtn2 a {
	color: #FFF;
}

.modBtn {
	font-size: 23px;
	font-size: 2.3rem;
	-webkit-box-shadow: 0 8px 0 var(--darkPink);
	box-shadow: 0 8px 0 var(--darkPink);
	padding: 9px 40px 9px 24px
}

}
@media screen and (min-width:1025px) {
.modBtn:hover {
	-webkit-transform: translateY(12px);
	transform: translateY(12px);
	-webkit-box-shadow: none;
	box-shadow: none
}
.modBtn2:hover {
	transform: scale(1.05);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.3);
}
}
.modBtn>span {
	vertical-align: middle
}
.modBtn:after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 12px);
	right: 38px;
	background-color: var(--white);
	-webkit-mask-image: url(../../assets/img/icon_arrow_right.svg);
	mask-image: url(../../assets/img/icon_arrow_right.svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%, 100%;
	mask-size: 100%, 100%;
	width: 24px;
	height: 24px
}

@media screen and (max-width:768px) {
.modBtn:after {
	top: calc(50% - 10px);
	right: 15px;
	width: 20px;
	height: 20px
}
}
.modBtn .spText {
	display: none
}
@media screen and (max-width:768px) {
.modBtn .spText {
	display: block;
	position: absolute;
	top: -13px;
	left: -1px
}
}
.modBtn .pcText {
	display: inline
}
@media screen and (max-width:768px) {
.modBtn .pcText {
	display: none
}
}
.modBtn .large {
	font-size: 50px;
	font-size: 5rem;
	margin-right: 18px;
	margin-left: -33px
}
.modBtn__text {
	margin-right: 8px
}
@media screen and (max-width:768px) {
.modBtn__text {
	margin-right: 10px
}
}
.modBtn__text .smallText {
	display: inline
}
.dot {
	background-image: radial-gradient(circle at center, var(--pink) 20%, transparent 20%);
	background-position: top right;
	background-repeat: repeat-x;
	background-size: 1em 0.3em;
	padding-top: 0.2em
}
.mod {
}
.modTitleType01 {
	color: var(--white);
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--darkLine)));
	background: linear-gradient(transparent 60%, var(--darkLine) 60%);
	font-size: 50px;
	font-size: 5rem
}
.modTitleType01 .emp {
	color: var(--white);
	font-size: 52px;
	font-size: 5.2rem
}
@media screen and (max-width:768px) {
.modTitleType01 {
	font-size: 28px;
	font-size: 2.8rem;
	line-height: 1.4;
	letter-spacing: 0.01em
}
.modTitleType01 .emp {
	color: var(--white);
	font-size: 40px;
	font-size: 4rem
}
}
.modTitleType01 .en {
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
.modTitleType02 {
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 30px;
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--white)));
	background: linear-gradient(transparent 60%, var(--white) 60%);
	font-size: 40px;
	font-size: 4rem
}
.modTitleType02 .emp {
	color: var(--pink);
	font-size: 52px;
	font-size: 5.2rem
}
@media screen and (max-width:768px) {
.modTitleType02 {
	line-height: 1.45;
	font-size: 28px;
	font-size: 2.8rem
}
.modTitleType02 .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.modTitleType02 .en {
	font-family: "Barlow", sans-serif;
	font-weight: 600;
	font-size: 64px;
	font-size: 6.4rem
}
.modTitleType02--lineGreen {
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--line)));
	background: linear-gradient(transparent 60%, var(--line) 60%)
}
@media screen and (max-width:768px) {
.modTitleType02--lineGreen {
	letter-spacing: -0.01em
}
}
.modTitleType02--lineGreen .en.small {
	font-size: 40px;
	font-size: 4rem
}
@media screen and (max-width:768px) {
.modTitleType02--lineGreen .en.small {
	font-size: 28px;
	font-size: 2.8rem
}
}
.modTitleType02--lineGreen .en.emp {
	font-size: 64px;
	font-size: 6.4rem
}
@media screen and (max-width:768px) {
.modTitleType02--lineGreen .en.emp {
	font-size: 40px;
	font-size: 4rem
}
}
.modTitleType02--small {
	font-size: 32px;
	font-size: 3.2rem
}
.modTitleType02--small .emp {
	color: var(--pink);
	font-size: 40px;
	font-size: 4rem
}
.modTitleType03 {
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 45px;
	font-size: 40px;
	font-size: 4rem
}
.modTitleType03 .emp {
	color: var(--pink);
	font-size: 52px;
	font-size: 5.2rem
}
@media screen and (max-width:768px) {
.modTitleType03 {
	font-size: 28px;
	font-size: 2.8rem
}
.modTitleType03 .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.modTitleType04 {
	font-weight: bold;
	font-size: 28px;
	font-size: 2.8rem;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 45px;
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--line)));
	background: linear-gradient(transparent 60%, var(--line) 60%)
}
.modTitleType04 .emp {
	color: var(--pink);
	font-size: 36px;
	font-size: 3.6rem
}
.modTitleType05 {
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 45px;
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--line)));
	background: linear-gradient(transparent 60%, var(--line) 60%);
	font-size: 40px;
	font-size: 4rem
}
.modTitleType05 .emp {
	color: var(--pink);
	font-size: 52px;
	font-size: 5.2rem
}
@media screen and (max-width:768px) {
.modTitleType05 {
	font-size: 28px;
	font-size: 2.8rem
}
.modTitleType05 .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.modTitleRibbon {
	text-align: center;
	margin-bottom: 22px
}
.modTitleRibbon .text {
	position: relative;
	z-index: 1
}
.modTitleRibbon__inner {
	position: relative;
	display: inline-block;
	background: var(--yellow);
	font-weight: bold;
	text-align: center;
	height: 50px;
	line-height: 50px;
	border-radius: 30px
}
@media screen and (min-width:1025px) {
.modTitleRibbon__inner {
	font-size: 24px;
	font-size: 2.4rem
}
}
@media screen and (max-width:768px) {
.modTitleRibbon__inner {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 46px;
	height: 46px
}
}
.modTitleRibbon__inner:after, .modTitleRibbon__inner:before {
	content: "";
	display: block;
	position: absolute;
	top: -8px;
	width: 83px;
	height: 83px
}
@media screen and (max-width:768px) {
.modTitleRibbon__inner:after, .modTitleRibbon__inner:before {
	width: 77px;
	height: 74px;
	top: -6px
}
}
.modTitleRibbon__inner:before {
	left: -40px;
	background: url(../../assets/img/bg_ribbon_left.svg) no-repeat center center;
	background-size: 100% auto
}
.modTitleRibbon__inner:after {
	right: -40px;
	background: url(../../assets/img/bg_ribbon_right.svg) no-repeat center center;
	background-size: 100% auto
}
.modTextLead {
	color: #222;
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 40px
}
.modSection__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 0
}
@media screen and (max-width:768px) {
.modSection__inner {
	padding: 60px 15px
}
}
.modSection__linkcp {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}
.modSection__title {
	text-align: center;
	margin-bottom: 40px
}
.modSection__title--left {
	text-align: left
}
.modSection__title:has(.modTitleType04) {
margin-bottom:45.5px
}
.modSection--bgGreen {
	background: var(--green)
}
.modSection--bgLightGreen {
	background: var(--lightGreen)
}
.modSection--bgLightGray {
	background: var(--lightGray)
}
.modBlock {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 30px 0
}
@media screen and (max-width:768px) {
.modBlock {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}
}
.modBlock__col {
	width: 50%
}
@media screen and (max-width:768px) {
.modBlock__col {
	width: 100%
}
}
.main__kv {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: url(../../assets/img/bg_kv.png) no-repeat center center;
	background-size: cover;
	min-height: 520px;
	padding-bottom: 105px;
	overflow: hidden
}
@media screen and (max-width:768px) {
.main__kv {
	background: url(../../assets/img/sp/bg_kv.png) no-repeat center center;
	background-size: cover;
	height: auto;
	padding-bottom: 0
}
}
.main__kv__inner {
	position: relative;
	max-width: 1450px;
	width: 100%;
	height: 100%
}
.main__kv__badge {
	position: absolute;
	width: clamp(104px, 12.85vw, 185px)
}
@media screen and (min-width:1025px) {
.main__kv__badge {
	top: 20px;
	left: 20px
}
}
@media screen and (max-width:768px) {
.main__kv__badge {
	top: auto;
	left: calc(50% + 80px);
	bottom: 52px;
	-webkit-transform: none;
	transform: none
}
}
@media screen and (min-width:767px) and (max-width:1000px) {
.main__kv__badge {
	left: auto;
	right: 15px
}
}
.main__kv__badge .picture {
	max-width: 185px;
	height: auto
}
.main__kv__badge .img {
	width: 100%;
	height: auto
}
.main__kv__ribbon {
	margin: 35px auto 0;
	text-align: center
}
.main__kv__ribbon img {
	width: 526px;
	height: auto
}
@media screen and (max-width:768px) {
.main__kv__ribbon {
	margin: 18px auto 0
}
}
.main__kv__title {
	text-align: center;
	margin-top: -82px
}
@media screen and (max-width:768px) {
.main__kv__title {
	margin-top: -41px;
	padding: 0 15px
}
}
.main__kv__title img {
	height: auto
}
@media screen and (min-width:1025px) {
.main__kv__title img {
	width: 994px
}
}
@media screen and (max-width:768px) {
.main__kv__title img {
	width: 100%
}
}
.main__kv__list {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: var(--white);
	border-radius: 16px;
	font-size: clamp(20px, 2.2vw, 32px);
	font-weight: bold;
	line-height: 1.2;
	padding: 12px 25px 12px 0;
	margin: -25px auto 0;
	z-index: 2;
	max-width: 994px;
	width: 80vw;
	letter-spacing: 0.5px
}
.main__kv__list:after {
	content: "";
	display: block;
	position: absolute;
	right: -23vw;
	bottom: -143px;
	background: url(../../assets/img/img_kv_photo.png) no-repeat center center;
	background-size: 100% auto;
	max-width: 280px;
	height: 324px;
	width: 20vw
}
@media screen and (min-width:769px) {
.main__kv__list:after {
	right: -12.5vw;
	top: 3.1vw;
	-webkit-transform: translateY(-20%);
	transform: translateY(-20%)
}
}
@media screen and (max-width:768px) {
.main__kv__list:after {
	display: none
}
}
@media screen and (min-width:767px) and (max-width:769px) {
.main__kv__list {
	margin-top: 0!important
}
}
@media screen and (max-width:768px) {
.main__kv__list {
	font-size: 20px;
	font-size: 2rem;
	padding: 0 8px;
	margin: -15.7vw 15px 0;
	width: calc(100% - 30px);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	border-radius: 8px
}
}
@media screen and (min-width:767px) and (max-width:1000px) {
.main__kv__list {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	font-size: 20px;
	font-size: 2rem;
	padding: 8px 8px;
	margin: -15.7vw 15px 0
}
.main__kv__list .modBpPc {
	display: block
}
}
.main__kv__list .emp {
	color: var(--pink);
	font-size: 52px;
	font-size: 5.2rem
}
@media screen and (max-width:1300px) {
.main__kv__list .emp {
	font-size: 40px
}
}
@media screen and (max-width:768px) {
.main__kv__list .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__kv__list .item {
	color: #333;
	font-size: clamp(20px, 2.2vw, 32px);
	text-align: center;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	padding: 20px 0 10px 0
}
@media screen and (max-width:768px) {
.main__kv__list .item {
	font-size: 20px;
	font-size: 2rem;
	width: 100%;
	padding: 12px 0
}
}
.main__kv__list .item:nth-child(n+2) {
	border-left: 2px solid var(--line)
}
@media screen and (max-width:768px) {
.main__kv__list .item:nth-child(n+2) {
	border-left: none;
	border-top: 2px solid var(--line);
	padding: 12px 0 15px
}
}
@media screen and (min-width:767px) and (max-width:1000px) {
.main__kv__list .item:nth-child(n+2) {
	border-left: 2px solid var(--line);
	border-top: none
}
}
@media screen and (max-width:768px) {
.main__kv__list .item:nth-child(3) {
	padding: 6px 0 20px
}
}
@media screen and (min-width:767px) and (max-width:1000px) {
.main__kv__list .item:nth-child(3) {
	border-left: 2px solid var(--line);
	border-top: none;
	padding: 12px 0 15px
}
}
.main__kv__list .underline {
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, var(--line)));
	background: linear-gradient(transparent 60%, var(--line) 60%)
}
.main__kv__list .dot {
	background-image: radial-gradient(circle at center, var(--pink) 20%, transparent 20%);
	background-position: top right;
	background-repeat: repeat-x;
	background-size: 1em 0.3em;
	padding-top: 0.2em
}
.main__kv__photo {
	display: none
}
@media screen and (max-width:768px) {
.main__kv__photo {
	position: relative;
	display: block;
	z-index: 2;
	text-align: center;
	margin: -12px 0 0;
	right: 5%
}
.main__kv__photo img {
	width: 212px;
	height: auto
}
}
.main__strength {
	position: relative;
	background: var(--green)
}
.main__strength .ctaBtn {
	position: absolute;
	top: -60px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 2
}
@media screen and (max-width:768px) {
.main__strength .ctaBtn {
	position: relative;
	display: block;
	top: -33px;
	padding: 0;
	width: 100%;
	max-width: 100%;
	text-align: center
}
}
.main__strength .ctaBtn .modBtn {
	padding: 15px clamp(50px, 6vw, 88px);
	font-size: 35px;
	font-size: 3.5rem
}
@media screen and (max-width:768px) {
.main__strength .ctaBtn .modBtn {
	font-size: 23px;
	font-size: 2.3rem;
	padding: 11px 34px;
	width: calc(100% - 30px);
	letter-spacing: 0.07em;
	text-indent: -0.5em
}
}
@media screen and (max-width:374px) {
.main__strength .ctaBtn .modBtn {
	font-size: 20px;
	font-size: 2rem
}
}
.main__strength .ctaBtn .modBtn .spText {
	text-indent: 0
}
@media screen and (max-width:768px) {
.main__strength .ctaBtn .modBtn .smallText {
	font-size: 20px;
	font-size: 2rem
}
}
.main__strength .modSection__inner {
	padding-top: 110px
}
@media screen and (max-width:768px) {
.main__strength .modSection__inner {
	padding-top: 25px;
	padding-bottom: 75px
}
}
.main__strength .modTitleType01 .emp.en {
	font-size: 80px;
	font-size: 8rem
}
@media screen and (max-width:768px) {
.main__strength .modTitleType01 .emp.en {
	font-size: 40px;
	font-size: 4rem
}
}
.main__scalping {
	overflow-x: hidden
}
.main__scalping .modSection__inner {
	padding-bottom: 0;
	padding-top: 50px
}
@media screen and (max-width:1024px) {
.main__scalping .modSection__inner {
	position: relative;
	padding: 63px 15px 0
}
}
@media screen and (min-width:1025px) {
.main__scalping .modSection__title {
	text-align: left
}
}
@media screen and (max-width:768px) {
.main__scalping .modSection__title {
	margin: 2px 0 40px
}
}
.main__scalping .modTextLead {
	position: relative
}
.main__scalping .modTextLead:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -26px;
	right: -6px;
	background: url(../../assets/img/img_photo_scalping.png) no-repeat center center;
	background-size: 100% auto;
	width: 175px;
	height: 195px
}
@media screen and (max-width:1024px) {
.main__scalping .modTextLead:after {
	top: -30px;
	right: -80px;
	margin-right: 10px;
	width: 120px;
	height: 198px
}
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__scalping .modTextLead:after {
	top: -30px;
	right: -60px!important;
	width: 120px;
	height: 198px
}
}
@media screen and (max-width:455px) {
.main__scalping .modTextLead:after {
	top: -30px;
	right: -40px!important;
	width: 120px;
	height: 198px
}
}
@media screen and (max-width:1024px) {
.main__scalping .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding-right: 130px;
	line-height: 1.4
}
}
@media screen and (max-width:768px) {
.main__scalping .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding-left: 8px;
	padding-right: 80px;
	line-height: 30px
}
}
@media screen and (max-width:455px) {
.main__scalping .modTextLead {
	width: 100%
}
}
.main__scalping .modListCaution {
	position: absolute;
	left: 0;
	bottom: 80px;
	max-width: 50%
}
@media screen and (max-width:768px) {
.main__scalping .modListCaution {
	left: 0;
	bottom: 24px;
	padding: 9px 15px;
	max-width: 100%;
	-webkit-transform: none;
	transform: none
}
}
@media screen and (max-width:1024px) {
.main__scalping .modListCaution {
	background: rgba(255,255,255,0.8);
	border-radius: 8px;
	padding: 15px;
	left: 50%;
	bottom: 24px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	max-width: 100%;
	width: 100%;
	z-index: 1
}
}
.main__scalping .modBlock {
	position: relative;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end
}
@media screen and (max-width:1024px) {
.main__scalping .modBlock {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start
}
}
@media screen and (max-width:768px) {
.main__scalping .modBlock {
	gap: 0
}
}
@media screen and (max-width:1024px) {
.main__scalping .modBlock__col {
	width: 100%
}
}
.main__scalping .modBlock__col--text {
	position: relative;
	padding-bottom: 120px
}
@media screen and (max-width:1024px) {
.main__scalping .modBlock__col--text {
	padding-bottom: 20px;
	z-index: 2
}
}
@media screen and (max-width:768px) {
.main__scalping .modBlock__col--image {
	width: 155vw
}
}
.main__scalping .modBlock__col--image img {
	width: 56vw;
	max-width: none;
	margin: 0 15px
}
@media screen and (max-width:768px) {
.main__scalping .modBlock__col--image img {
	margin-left: -16px;
	margin-top: 4px
}
}
@media screen and (max-width:1024px) {
.main__scalping .modBlock__col--image img {
	width: 100%
}
}
@media screen and (min-width:767px) and (max-width:768px) {
.main__scalping .modBlock__col--image img {
	width: 120vw!important;
	margin-left: 50%;
	-webkit-transform: translateX(-65%);
	transform: translateX(-65%)
}
}
.main__speed {
	overflow: hidden
}
.main__speed .modSection__inner {
	padding-bottom: 0
}
@media screen and (max-width:1024px) {
.main__speed .modSection__inner {
	position: relative;
	padding: 60px 15px 0
}
}
@media screen and (min-width:1025px) {
.main__speed .modSection__title {
	text-align: left;
	letter-spacing: 0.01em;
	margin-bottom: 25px
}
}
@media screen and (max-width:1024px) {
.main__speed .modSection__title {
	white-space: nowrap
}
}
@media screen and (max-width:768px) {
.main__speed .modSection__title {
	margin: 0 -15px 32px
}
}
.main__speed .modTextLead {
	position: relative
}
.main__speed .modTextLead:after {
	content: "";
	display: block;
	position: absolute;
	top: -105px;
	right: 0;
	background: url(../../assets/img/img_photo_speed.png) no-repeat right center;
	background-size: 100% auto;
	width: 157px;
	height: 198px
}
@media screen and (max-width:768px) {
.main__speed .modTextLead:after {
	top: -34px;
	right: -5px;
	width: 106px
}
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__speed .modTextLead:after {
	top: -32px;
	right: -40px;
	width: 106px
}
}
@media screen and (max-width:1024px) {
.main__speed .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding-right: 130px;
	line-height: 1.4
}
}
@media screen and (max-width:768px) {
.main__speed .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding-left: 8px;
	white-space: nowrap;
	line-height: 1.5
}
}
@media screen and (max-width:455px) {
.main__speed .modTextLead {
	width: 100%
}
}
.main__speed .modListCaution {
	position: absolute;
	left: 0;
	bottom: 60px;
	max-width: 50%
}
@media screen and (max-width:1024px) {
.main__speed .modListCaution {
	left: 0;
	bottom: 24px;
	padding: 15px;
	max-width: 100%;
	-webkit-transform: none;
	transform: none;
	background: rgba(255,255,255,0.8);
	border-radius: 8px;
	z-index: 1
}
}
.main__speed .modBlock {
	position: relative;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end
}
@media screen and (max-width:1024px) {
.main__speed .modBlock {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start
}
}
@media screen and (max-width:1024px) {
.main__speed .modBlock__col {
	width: 100%
}
}
.main__speed .modBlock__col--text {
	position: relative;
	padding-bottom: 120px
}
@media screen and (max-width:1024px) {
.main__speed .modBlock__col--text {
	padding-bottom: 0
}
.main__speed .modBlock__col--text .modListCaution {
	display: none
}
}
@media screen and (max-width:768px) {
.main__speed .modBlock__col--text {
	z-index: 2;
	padding-bottom: 10px
}
}
@media screen and (min-width:1024px) {
.main__speed .modBlock__col--image .modListCaution {
	display: block
}
}
@media screen and (max-width:1023px) {
.main__speed .modBlock__col--image .modListCaution {
	z-index: 1
}
}
.main__speed .modBlock__col--image img {
	width: 68vw;
	max-width: none
}
@media screen and (max-width:1024px) {
.main__speed .modBlock__col--image img {
	width: 100%
}
}
@media screen and (max-width:768px) {
.main__speed .modBlock__col--image img {
	width: 200vw;
	max-width: none
}
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__speed .modBlock__col--image img {
	width: 155vw!important;
	max-width: none;
	margin-left: 50%;
	-webkit-transform: translateX(-30%);
	transform: translateX(-30%)
}
}
.main__spread {
	overflow: hidden;
	position: relative
}
.main__spread .modSection__inner {
	padding: 60px 0 0;
	max-width: 100%
}
@media screen and (max-width:768px) {
.main__spread .modSection__inner {
	position: relative
}
}
@media screen and (min-width:1025px) {
.main__spread .modSection__title {
	text-align: left
}
}
@media screen and (max-width:768px) {
.main__spread .modSection__title {
	margin-bottom: 32px
}
}
.main__spread .modTitleRibbon {
	text-align: left;
	padding-left: 35px
}
@media screen and (max-width:1024px) {
.main__spread .modTitleRibbon {
	text-align: center
}
}
@media screen and (max-width:768px) {
.main__spread .modTitleRibbon {
	padding-left: 0
}
}
.main__spread .modTextLead {
	position: relative
}
.main__spread .modTextLead:after {
	content: "";
	display: block;
	position: absolute;
	top: -150px;
	right: 27px;
	background: url(../../assets/img/img_photo_spread.png) no-repeat center center;
	background-size: 100% auto;
	width: 147px;
	height: 197px
}
@media screen and (max-width:1024px) {
.main__spread .modTextLead:after {
	top: -45px;
	right: -40px
}
}
@media screen and (max-width:768px) {
.main__spread .modTextLead:after {
	top: -32px;
	right: -2px;
	width: 102px
}
}
@media screen and (max-width:1024px) {
.main__spread .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding-right: 130px;
	line-height: 1.4
}
}
@media screen and (max-width:768px) {
.main__spread .modTextLead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	white-space: nowrap;
	padding-left: 8px;
	line-height: 1.45
}
}
@media screen and (max-width:455px) {
.main__spread .modTextLead {
	width: 100%
}
}
.main__spread .modBlock {
	position: relative;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	z-index: 1
}
@media screen and (max-width:1024px) {
.main__spread .modBlock {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start
}
}
.main__spread .modBlock__col {
	width: 50%;
	max-width: 606px;
	padding: 60px 0
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col {
	width: 100%;
	max-width: 100%
}
}
.main__spread .modBlock__col--text {
	position: relative;
	padding-bottom: 60px
}
@media screen and (max-width:768px) {
.main__spread .modBlock__col--text {
	z-index: 2;
	padding: 0 15px 5px
}
}
.main__spread .modBlock__col--text .modListCaution {
	padding-right: 30px
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col--text .modListCaution {
	display: none
}
}
.main__spread .modBlock__col--image {
	position: relative;
	padding: 0 0 38px
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col--image {
	padding: 0 15px
}
}
@media screen and (max-width:768px) {
.main__spread .modBlock__col--image {
	padding: 0 15px;
	background: url(../../assets/img/sp/bg_spread.png) no-repeat top left 22px;
	background-size: 190vw auto
}
}
.main__spread .modBlock__col--image .modListCaution {
	padding: 25px 0
}
@media screen and (min-width:1025px) {
.main__spread .modBlock__col--image .modListCaution {
	display: none
}
}
.main__spread .modBlock__col--image .imgSpread {
	position: relative
}
@media screen and (min-width:1025px) {
.main__spread .modBlock__col--image .imgSpread {
	aspect-ratio: 532/488
}
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col--image .imgSpread {
	background: var(--white);
	border-radius: 15px;
	padding: 15px
}
}
.main__spread .modBlock__col--image .imgSpread:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../../assets/img/img_spred_bg.png) no-repeat bottom left;
	background-size: cover;
	aspect-ratio: 2352/1190;
	aspect-ratio: 2352/1190;
	width: 1176px;
	z-index: 0
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col--image .imgSpread:before {
	content: none
}
}
.main__spread .modBlock__col--image .imgSpread__inner {
	position: absolute;
	top: 26px;
	left: 26px;
	width: 82.5%;
	max-width: 532px;
	z-index: 1
}
@media screen and (max-width:1024px) {
.main__spread .modBlock__col--image .imgSpread__inner {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	max-width: 100%
}
}
.main__spread .modBlock__col--image .imgSpread__inner img {
	width: 100%;
	height: auto
}
.main__feature {
	position: relative;
	margin: 140px auto 0
}
@media screen and (max-width:768px) {
.main__feature {
	margin: 0;
	padding: 130px 10px 0;
	overflow: hidden
}
}
.main__feature .modSection__inner {
	background: var(--green);
	border-radius: 16px 16px 0 0;
	max-width: 1330px;
	padding: 60px 65px;
	overflow: hidden
}
@media screen and (max-width:768px) {
.main__feature .modSection__inner {
	padding: 42px 20px 60px 20px;
	overflow: visible
}
}
@media screen and (max-width:768px) {
.main__feature .modSection__title {
	margin-bottom: 32px
}
}
@media screen and (max-width:768px) {
.main__feature .modSection__title .modTitleType01 .en {
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__feature__ribbon {
	position: absolute;
	top: -80px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin: 0 auto;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content
}
@media screen and (max-width:768px) {
.main__feature__ribbon {
	top: 60px;
	width: 100%;
	text-align: center
}
}
.main__feature__ribbon img {
	width: 100%;
	height: auto;
	max-width: 709px
}
.main__feature__lead {
	position: relative;
	color: var(--white);
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.8;
	padding: 0 100px
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__feature__lead {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding: 0 30px 0 0!important
}
.main__feature__lead:after {
	content: "";
	display: block;
	position: absolute;
	background: url(../../assets/img/img_cta_left.png) no-repeat right center;
	background-size: 100% auto;
	width: 90px;
	height: 129px;
	right: 0;
	bottom: 0
}
}
@media screen and (min-width:767px) and (max-width:1024px) and (max-width:768px) {
.main__feature__lead:after {
	right: -10px;
	bottom: 6px
}
}
@media screen and (max-width:768px) {
.main__feature__lead {
	padding: 0;
	letter-spacing: -0.01em;
	font-size: 18px;
	font-size: 1.8rem
}
.main__feature__lead:after {
	content: "";
	display: block;
	position: absolute;
	background: url(../img/img_cta_left.png) no-repeat right center;
	background-size: 100% auto;
	width: 90px;
	height: 129px;
	right: 0;
	bottom: 0
}
}
@media screen and (max-width:768px) and (max-width:768px) {
.main__feature__lead:after {
	right: -10px;
	bottom: 6px
}
}
@media screen and (max-width:455px) {
.main__feature__lead {
	width: 100%
}
}
@media screen and (max-width:768px) {
.main__feature__toc {
	margin: 0 -8px
}
}
.main__feature__toc .toc {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	padding: 0 100px;
	gap: 0 80px;
	margin: 45px 0 0;
	z-index: 1
}
@media screen and (max-width:1024px) {
.main__feature__toc .toc {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 0;
	width: 100%;
	margin: 33px 0 0
}
}
.main__feature__toc .toc__photo {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}
@media screen and (max-width:1024px) {
.main__feature__toc .toc__photo {
	display: none
}
}
.main__feature__toc .toc__photo__text {
	position: relative;
	color: var(--white);
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto
}
.main__feature__toc .toc__photo__text:after, .main__feature__toc .toc__photo__text:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 5px;
	width: 2px;
	height: 38px;
	background: var(--white)
}
.main__feature__toc .toc__photo__text:before {
	left: -10px;
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg)
}
.main__feature__toc .toc__photo__text:after {
	right: -10px;
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg)
}
.main__feature__point {
	margin-top: 45px
}
@media screen and (max-width:768px) {
.main__feature__point {
	margin: 70px -12px 0
}
}
.main__feature__point .modListPoint__item {
	position: relative
}
.main__feature__point .modListPoint__item__number {
	position: absolute;
	top: -15px;
	left: -13px;
	z-index: 1;
	height: 50px;
	font-family: "Barlow", sans-serif
}
@media screen and (max-width:768px) {
.main__feature__point .modListPoint__item__number {
	top: -9px;
	height: 34px
}
}
.main__feature__point .modListPoint__item__number:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -18px;
	z-index: -1;
	background: url(../img/bg_ribbon_tail.svg) no-repeat center;
	background-size: cover;
	background-position: right;
	height: 100%;
	width: 26px
}
.main__feature__point .modListPoint__item__number:before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	z-index: -1;
	background: url(../img/bg_ribbon_back.svg) no-repeat center;
	background-size: 100% auto;
	height: 56px;
	width: 17px
}
@media screen and (max-width:768px) {
.main__feature__point .modListPoint__item__number:before {
	width: 6px;
	height: 50px
}
}
.main__feature__point .modListPoint__item__number>span {
	background-color: var(--yellow);
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	height: 100%;
	padding: 7.5px 12px 7.5px 22px;
	background-repeat: no-repeat;
	font-family: "Barlow", sans-serif;
	font-weight: 600;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0;
	line-height: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}
@media screen and (max-width:768px) {
.main__feature__point .modListPoint__item__number>span {
	font-size: 20px;
	font-size: 2rem;
	padding: 0 0 0 8px
}
}
.main__feature .toolBlock {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 0 40px;
	background: var(--lightGreen);
	border-radius: 0 0 16px 16px;
	max-width: 1330px;
	margin: 0 auto;
	padding: 60px
}
@media screen and (max-width:768px) {
.main__feature .toolBlock {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 60px 10px 8px
}
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__feature .toolBlock {
	padding-bottom: 60px
}
}
.main__feature .toolBlock__outline {
	max-width: 679px;
	padding-top: 30px
}
@media screen and (min-width:767px) and (max-width:1024px) {
.main__feature .toolBlock__outline {
	max-width: -webkit-fit-content;
	max-width: -moz-fit-content;
	max-width: fit-content;
	margin: 0 auto
}
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline {
	padding-top: 0
}
}
.main__feature .toolBlock__outline .modSection__title {
	margin-bottom: 30px
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline .modSection__title {
	text-align: center;
	margin-bottom: 25px
}
}
.main__feature .toolBlock__outline .modSection__title .modTitleType02 {
	line-height: 1.4
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline .modSection__title .modTitleType02 {
	font-size: 28px;
	font-size: 2.8rem;
	padding: 0;
	letter-spacing: -0.01em
}
.main__feature .toolBlock__outline .modSection__title .modTitleType02 .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__feature .toolBlock__outline .modSection__title .modTitleType02 .emp {
	font-family: "Barlow", sans-serif;
	font-weight: 600
}
.main__feature .toolBlock__outline__title {
	color: #222;
	font-weight: bold;
	font-size: 32px;
	font-size: 3.2rem
}
.main__feature .toolBlock__outline__title .emp {
	color: var(--pink);
	font-size: 40px;
	font-size: 4rem
}
.main__feature .toolBlock__outline__icon {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 3px;
	margin-top: 30px
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline__icon {
	gap: 0;
	margin-top: 0;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}
}
.main__feature .toolBlock__outline__icon .icon--app img {
	width: 140px;
	height: auto
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline__icon .icon--app img {
	width: 94px
}
}
.main__feature .toolBlock__outline__icon .icon--cross img {
	display: block;
	width: 24px;
	height: 24px;
	margin: -5px 5px 0 -7px;
	max-width: none
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__outline__icon .icon--cross img {
	display: block;
	width: 20px;
	height: auto;
	margin: -5px 5px 0 0px
}
}
.main__feature .toolBlock__detail {
	width: 57%
}
@media screen and (max-width:768px) {
.main__feature .toolBlock__detail {
	width: 100%
}
}
.main__boxLead {
	font-size: 52px;
	font-size: 5.2rem;
	font-weight: bold;
	color: var(--darkGreen);
	text-align: center;
	padding: 107px 0 125px;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	overflow: hidden
}
@media screen and (max-width:768px) {
.main__boxLead {
	font-size: 28px;
	font-size: 2.8rem;
	padding: 57px 0 0
}
}
.main__boxLead__text {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	position: relative;
	z-index: 10
}
.main__boxLead__text .en {
	font-family: "Barlow", sans-serif;
	font-weight: 700
}
.main__boxLead__text:after, .main__boxLead__text:before {
	content: "";
	display: inline-block;
	height: auto;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	top: 0
}
.main__boxLead__text:before {
	width: 110px;
	aspect-ratio: 110/162;
	background-image: url("../img/img_illustration08.png");
	left: 0;
	-webkit-transform: translate(-145%, 22%);
	transform: translate(-145%, 22%);
	-webkit-animation: floatUp_7 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_7 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate
}
@media screen and (max-width:768px) {
.main__boxLead__text:before {
	-webkit-animation: floatUp_7sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_7sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	width: 64px;
	-webkit-transform: translate(74%, 116%);
	transform: translate(74%, 116%)
}
}
.main__boxLead__text:after {
	width: 304px;
	aspect-ratio: 304/187;
	background-image: url("../img/img_illustration07.png");
	right: 0;
	-webkit-transform: translate(84%, 8%);
	transform: translate(84%, 8%);
	-webkit-animation: floatUp_10 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_10 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate
}
@media screen and (max-width:768px) {
.main__boxLead__text:after {
	-webkit-transform: translate(-17%, 87%);
	transform: translate(-17%, 87%);
	width: 181px;
	-webkit-animation: floatUp_10sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_10sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate
}
}
@media screen and (min-width:1025px) {
.main__boxLead__illustration {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0
}
}
@media screen and (max-width:768px) {
.main__boxLead__illustration {
	max-width: 375px;
	height: 201px;
	position: relative;
	margin: 0 auto
}
}
.main__boxLead__illustration figure {
	position: absolute;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-animation: floatUp_3 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_3 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure {
	-webkit-animation: floatUp_3sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate;
	animation: floatUp_3sp 1.2s cubic-bezier(0.42, 0, 0.58, 1) infinite alternate
}
}
.main__boxLead__illustration figure:first-child {
	right: 21.7%;
	top: 22%
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:first-child {
	right: 41.3%;
	top: 27%;
	rotate: 6deg
}
}
.main__boxLead__illustration figure:nth-child(2) {
	right: 1%;
	bottom: 20%;
	rotate: -7deg
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:nth-child(2) {
	right: 9.5%;
	bottom: 64%
}
}
.main__boxLead__illustration figure:nth-child(3) {
	left: 28.5%;
	bottom: 16%;
	rotate: -11deg
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:nth-child(3) {
	left: 40.5%;
	bottom: 24%
}
.main__boxLead__illustration figure:nth-child(3) img {
	height: 22px
}
}
.main__boxLead__illustration figure:nth-child(4) {
	right: 32.8%;
	bottom: 19%
}
.main__boxLead__illustration figure:nth-child(4) img {
	height: 40px
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:nth-child(4) {
	right: 10.1%;
	bottom: 32%
}
.main__boxLead__illustration figure:nth-child(4) img {
	height: 20px
}
}
.main__boxLead__illustration figure:nth-child(5) {
	left: 3.5%;
	top: 55%
}
.main__boxLead__illustration figure:nth-child(5) img {
	height: 40px
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:nth-child(5) {
	left: 8.5%;
	top: 50%
}
.main__boxLead__illustration figure:nth-child(5) img {
	height: 20px
}
}
.main__boxLead__illustration figure:nth-child(6) {
	left: 20%;
	top: 26%
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure:nth-child(6) {
	left: 34%;
	top: 13%
}
.main__boxLead__illustration figure:nth-child(6) img {
	width: 25px
}
}
.main__boxLead__illustration figure img {
	width: auto;
	height: 46px
}
@media screen and (max-width:768px) {
.main__boxLead__illustration figure img {
	height: 20px
}
}
@media screen and (max-width:768px) {
.main__environment .modSection__inner {
	padding: 60px 15px 45px
}
}
.main__environment .modSection__title {
	margin-bottom: 45px
}
@media screen and (max-width:768px) {
.main__environment .modSection__title {
	margin-bottom: 30px
}
}
@media screen and (max-width:768px) {
.main__environment .modSection__title .modTitleType02 {
	line-height: 1.6;
	font-size: 24px;
	font-size: 2.4rem
}
.main__environment .modSection__title .modTitleType02 .emp {
	color: var(--pink);
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__campaign .modTitleType05 .en {
	font-family: "Barlow", sans-serif;
	font-weight: 700
}
.main__campaign__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 30px
}
@media screen and (max-width:768px) {
.main__campaign__list {
	gap: 0 15px
}
}
.main__campaign .modSection__inner {
	max-width: 100%;
	margin: 0 auto;
	padding: 60px 0
}
.main__campaign .jsSliderWrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	gap: 0 30px
}
@media screen and (max-width:768px) {
.main__campaign .jsSliderWrapper {
	gap: 0 15px
}
}
.main__campaign .jsSlider {
	-webkit-animation: scroll-left 40s infinite linear 0.5s both;
	animation: scroll-left 40s infinite linear 0.5s both;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 30px
}
@media screen and (max-width:768px) {
.main__campaign .jsSlider {
	gap: 0 15px
}
}
.main__campaign .jsSlider__item {
	width: 25vw
}
@media screen and (max-width:768px) {
.main__campaign .jsSlider__item {
	width: 83.3333333333vw
}
}
.main__campaign .jsSlider__item img {
	display: block;
	width: 100%;
	height: auto
}
@-webkit-keyframes scroll-left {
0% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
to {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%)
}
}
@keyframes scroll-left {
0% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
to {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%)
}
}
.main__voice {
	position: relative;
	overflow: hidden
}
.main__voice .modSection__title {
	position: relative;
	background: var(--green);
	z-index: 2
}
@media screen and (max-width:768px) {
.main__voice .modSection__title .modTitleType01 {
	line-height: 1.2;
	font-size: 32px;
	font-size: 3.2rem
}
.main__voice .modSection__title .modTitleType01 .en {
	font-size: 40px;
	font-size: 4rem
}
}
.main__voice .modSection__inner {
	padding-bottom: 80px
}
@media screen and (max-width:768px) {
.main__voice .modSection__inner {
	padding-bottom: 0px
}
}
@media screen and (max-width:768px) {
.main__premium .modSection__inner {
	padding: 60px 15px 20px
}
}
@media screen and (max-width:768px) {
.main__premium .modSection__title .modTitleType05 {
	font-size: 28px;
	font-size: 2.8rem;
	letter-spacing: -0.01em
}
.main__premium .modSection__title .modTitleType05 .emp {
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__premium__content {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end
}
@media screen and (max-width:768px) {
.main__premium__content {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}
}
.main__premium__content .image {
	margin: 0 -10px 0 0
}
@media screen and (max-width:768px) {
.main__premium__content .image {
	margin: 10px 0 0 0
}
}
.main__premium__content .image img {
	margin: 0 0 -25px 0
}
@media screen and (max-width:768px) {
.main__premium__content .image img {
	width: 244px;
	height: auto;
	margin: 0
}
}
.main__premium__content .image .comment {
	position: relative;
	color: var(--green);
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 10px;
	line-height: 1.6;
	letter-spacing: 0.1em
}
@media screen and (max-width:768px) {
.main__premium__content .image .comment {
	font-size: 16px;
	font-size: 1.6rem
}
}
.main__premium__content .image .comment:after, .main__premium__content .image .comment:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 5px;
	width: 2px;
	height: 38px;
	background: var(--green)
}
.main__premium__content .image .comment:before {
	left: -10px;
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg)
}
.main__premium__content .image .comment:after {
	right: -10px;
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg)
}
@media screen and (max-width:768px) {
.main__merit .modSection__inner {
	padding: 60px 15px 40px
}
}
@media screen and (max-width:768px) {
.main__flow .modTitleType05 {
	letter-spacing: -0.01em;
	font-size: 28px;
	font-size: 2.8rem
}
.main__flow .modTitleType05 .emp {
	font-size: 32px;
	font-size: 3.2rem
}
}
.main__flow .cautionText {
	font-size: 12px;
	font-size: 1.2rem;
	color: #222;
	text-align: left;
	margin-top: 10px;
	text-indent: -1em;
	padding-left: 1em
}
@media screen and (max-width:768px) {
.main__flow .cautionText {
	display: none
}
}
.main__flow .smallMark {
	position: absolute;
	font-size: 15px;
	font-size: 1.5rem
}
.main__faq .modSection__inner {
	padding: 60px 0 120px
}
@media screen and (max-width:768px) {
.main__faq .modSection__inner {
	padding: 60px 15px 64px
}
}
.main__faq .modTitleType03 {
	display: inline;
	padding: 0 4px 2px 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #e5f4ef));
	background: linear-gradient(transparent 60%, #e5f4ef 60%)
}
@-webkit-keyframes floatUp_10 {
0% {
-webkit-transform:translate(84%, 8%);
transform:translate(84%, 8%)
}
to {
	-webkit-transform: translate(84%, calc(8% - 10px));
	transform: translate(84%, calc(8% - 10px))
}
}
@keyframes floatUp_10 {
0% {
-webkit-transform:translate(84%, 8%);
transform:translate(84%, 8%)
}
to {
	-webkit-transform: translate(84%, calc(8% - 10px));
	transform: translate(84%, calc(8% - 10px))
}
}
@-webkit-keyframes floatUp_10sp {
0% {
-webkit-transform:translate(-17%, 87%);
transform:translate(-17%, 87%)
}
to {
	-webkit-transform: translate(-17%, calc(87% - 4px));
	transform: translate(-17%, calc(87% - 4px))
}
}
@keyframes floatUp_10sp {
0% {
-webkit-transform:translate(-17%, 87%);
transform:translate(-17%, 87%)
}
to {
	-webkit-transform: translate(-17%, calc(87% - 4px));
	transform: translate(-17%, calc(87% - 4px))
}
}
@-webkit-keyframes floatUp_7 {
0% {
-webkit-transform:translate(-145%, 22%);
transform:translate(-145%, 22%)
}
to {
	-webkit-transform: translate(-145%, calc(22% - 7px));
	transform: translate(-145%, calc(22% - 7px))
}
}
@keyframes floatUp_7 {
0% {
-webkit-transform:translate(-145%, 22%);
transform:translate(-145%, 22%)
}
to {
	-webkit-transform: translate(-145%, calc(22% - 7px));
	transform: translate(-145%, calc(22% - 7px))
}
}
@-webkit-keyframes floatUp_7sp {
0% {
-webkit-transform:translate(74%, 116%);
transform:translate(74%, 116%)
}
to {
	-webkit-transform: translate(74%, calc(116% - 3px));
	transform: translate(74%, calc(116% - 3px))
}
}
@keyframes floatUp_7sp {
0% {
-webkit-transform:translate(74%, 116%);
transform:translate(74%, 116%)
}
to {
	-webkit-transform: translate(74%, calc(116% - 3px));
	transform: translate(74%, calc(116% - 3px))
}
}
@-webkit-keyframes floatUp_3 {
0% {
-webkit-transform:translateY(0);
transform:translateY(0)
}
to {
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px)
}
}
@keyframes floatUp_3 {
0% {
-webkit-transform:translateY(0);
transform:translateY(0)
}
to {
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px)
}
}
@-webkit-keyframes floatUp_3sp {
0% {
-webkit-transform:translateY(0);
transform:translateY(0)
}
to {
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px)
}
}
@keyframes floatUp_3sp {
0% {
-webkit-transform:translateY(0);
transform:translateY(0)
}
to {
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px)
}
}
