@charset "UTF-8";

/* リセット
---------------------------------------------------------- */
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, table, th, td, button, a, span {
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
ol ,
ul {
	list-style: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
address {
	font-style: normal;
}

/* オリジナルのレイアウト
----------------------------------------*/
html {
	font-size: 1rem;
	font-size: 10px;
	height: 100%;
}

body {
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
	background: #fff;
	font-size: 1.4rem;
	line-height: 1.5;
	height: 100%;
	-webkit-text-size-adjust: 100%;
}
body.open {
	width: 100%;
	height: 100%;
	position: fixed;
	overflow-y: scroll;
}

.wrapper {
	overflow: hidden;
}

img {
	width: 100%;
	height: auto;
	display: block;
}

a {
	text-decoration: none;
	color: inherit;
}
table,
tbody,
thead,
tr,
th,
td {
	position: static;
}
@media only screen and (max-width: 1200px) {
	html {
		font-size: .8333vw;
	}
}
@media only screen and (max-width: 834px) {
	html {
		font-size: 2.6667vw;
	}
	img {
		width: 100%;
	}
}

/*表示
----------------------------------------*/
@media only screen and (min-width: 835px) {
	.sp {
		display: none !important;
	}
}

@media only screen and (max-width: 834px) {
	.pc {
		display: none !important;
	}
}

/*header
----------------------------------------*/
.header {
	background: #fff;
	padding: 1.1rem 2rem;
	z-index: 10;
}
.header_logo {
	width: 21rem;
	margin: 0 auto;
}
@media only screen and (max-width: 834px) {
	.header {
		padding: .8rem 5%;
	}
	.header_logo {
		width: 18.2rem;
	}
}

/*mainv
----------------------------------------*/
.mainv {
	background: url(../img/mainv_bg_04.png) no-repeat top center / 140rem auto, url(../img/mainv_bg_03.png) no-repeat top 11.8rem right / 10.3rem auto, url(../img/mainv_bg_02.png) no-repeat top 13rem left / 7.9rem auto, url(../img/mainv_bg_01.png) no-repeat top center / 128rem auto, #900e0e;
	padding: 5.3rem 0 1.8rem 1.5rem;
	overflow: hidden;
}
.mainv h2 {
	max-width: 94.6rem;
	margin: 0 auto;
}
@media only screen and (max-width: 834px) {
	.mainv {
		background: url(../img/mainv_bg_01-sp.png) left top / 100% auto;
		padding: 3.7rem 0 2rem;
	}
	.mainv::before {
		display: none;
	}
	.mainv h2 {
		left: auto;
	}
}

/*schedule
----------------------------------------*/
.schedule {
	background: #32110b;
	padding: 1.1rem 1rem 1rem;
}
.schedule img {
	width: 64.5531rem;
	margin: 0 auto;
}
@media only screen and (max-width: 834px) {
	.schedule img {
		width: 34.1203rem;
	}
}

/*cta
----------------------------------------*/
.cta {
	padding: 6rem 2rem 4.1rem;
}
.cta_btn {
	display: block;
	max-width: 77.6rem;
	background: #0e7655;
	color: #fff;
	font-size: 2.8rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: .075em;
	margin: 0 auto;
	padding: 2.3rem 2rem 1.7rem 2.5rem;
	font-feature-settings: "palt";
	border-radius: 1rem;
	box-shadow: 0 .6rem 0 #03402d;
	transition: opacity .3s;
}
.cta_btn img {
	width: 30.6rem;
	position: absolute;
	left: 0;
	right: .3rem;
	top: -4.5rem;
	margin: 0 auto;
	pointer-events: none;
}
.cta_btn::before {
	content: '';
	display: block;
	width: 3.1rem;
	height: 3.1rem;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	top: 1rem;
	bottom: 0;
	right: 2.2rem;
	margin: auto 0;
}
.cta_btn::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .75rem 0 .75rem 1.1rem;
	border-color: transparent transparent transparent #0e7655;
	position: absolute;
	top: 1rem;
	bottom: 0;
	right: 3rem;
	margin: auto 0;
}
.cta p {
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	color: #108761;
	font-feature-settings: "palt";
	letter-spacing: .05em;
	margin-top: 1.2rem;
}
.cta p a {
	text-decoration: underline;
	text-underline-offset: .4rem;
	transition: opacity .3s;
}
.cta_note {
	max-width: 77.6rem;
	margin: 1.3rem auto 0;
	font-size: 1.2rem;
	line-height: 1.4;
	font-feature-settings: "palt";
}
@media (hover:hover) {
	.cta_btn:hover,
	.cta p a:hover {
		opacity: .6;
	}
}
@media only screen and (max-width: 834px) {
	.cta {
		padding: 4rem 1.2rem 2.2rem;
	}
	.cta_btn {
		font-size: 2rem;
		line-height: 1.35;
		letter-spacing: .03em;
		padding: 1.7rem 2rem .9rem 2.2rem;
		border-radius: .5rem;
		box-shadow: 0 .5rem 0 #03402d;
	}
	.cta_btn img {
		width: 17.3rem;
		top: -2.4rem;
	}
	.cta_btn::before {
		width: 3rem;
		height: 3rem;
		top: .1rem;
		right: 1.6rem;
	}
	.cta_btn::after {
		border-width: .7rem 0 .7rem 1rem;
		top: .2rem;
		right: 2.5rem;
	}
	.cta p {
		font-size: 1.4rem;
		margin-top: .8rem;
	}
	.cta_note {
		margin: 1.5rem .5rem 0;
		font-size: 1rem;
	}
}

/*about
----------------------------------------*/
.about {
	background: #fff3e6;
	padding: 7.3rem 2rem 8.1rem;
}
.about h2 {
	max-width: 70.1rem;
	margin: 0 auto;
	left: 2.8rem;
}
.about_txt {
	text-align: center;
	font-size: 1.92rem;
	font-feature-settings: "palt";
	margin: 1rem 0 0;
	font-weight: 600;
	letter-spacing: .04em;
}
.about h3 {
	max-width: 107rem;
	margin: -.5rem auto 3rem;
	left: -.1rem;
}
.about_box {
	max-width: 96rem;
	background: #fff;
	border-radius: 2rem;
	margin: 0 auto;
	padding: 5.1rem 5.2rem 5.4rem;
}
.about h4 {
	border-top: .2rem solid #8fb130;
	border-bottom: .2rem solid #8fb130;
	padding: 1.9rem 0 1.8rem;
	margin-bottom: 4rem;
}
.about h4 img {
	max-width: 38.8907rem;
	margin: 0 auto;
	position: relative;
	left: .1rem;
}
.about_product {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 5.7rem 0;
}
.about_product > li {
	width: 40rem;
	display: flex;
	gap: 0 1.7rem;
	padding-bottom: 7.5rem;
}
.about_product > li figure {
	width: 11.1rem;
	top: .5rem;
	left: -.2rem;
}
.about_list {
	width: calc(100% - 12.8rem);
	font-size: 1.6rem;
	font-feature-settings: "palt";
	line-height: 1.7919;
	letter-spacing: .05em;
	margin-top: -.7rem;
	padding-right: .9rem;
}
.about_product > li:nth-child(2n) figure {
	margin-left: 1rem;
}
.about_product > li:nth-child(2n) .about_list {
	width: calc(100% - 13.8rem);
}
.about_product > li:nth-child(3),
.about_product > li:nth-child(4) {
	padding-bottom: 7rem;
}
.about_product > li:nth-child(3) .about_list {
	padding-right: .6rem;
}
.about_product > li:nth-child(5),
.about_product > li:nth-child(6) {
	padding-bottom: 6.7rem;
}
.about_product > li:nth-child(5) figure,
.about_product > li:nth-child(6) figure {
	top: .1rem;
}
.about_list li {
	padding-left: 2.2rem;
}
.about_list li::before {
	content: '';
	display: block;
	width: 1.4rem;
	height: 1.4rem;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: .8rem;
	background: #8fb130;
}
.about_product > li:nth-child(2) .about_list li::before {
	background: #f27b22;
}
.about_product > li:nth-child(3) .about_list li::before {
	background: #f05187;
}
.about_product > li:nth-child(4) .about_list li::before {
	background: #f93828;
}
.about_product > li:nth-child(5) .about_list li::before {
	background: #1d59be;
}
.about_product > li:nth-child(6) .about_list li::before {
	background: #9d6bc9;
}
.about_btn {
	width: 100%;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	background: #a4c24f;
	color: #fff;
	font-size: 2.1rem;
	font-weight: 700;
	font-feature-settings: "palt";
	text-align: center;
	padding: 1.2rem;
	margin: 1.8rem 0 0;
	border-radius: 2.9rem;
	transition: opacity .3s;
}
.about_btn::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .75rem 0 .75rem 1rem;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 2.3rem;
	margin: auto 0;
	transition: transform .3s;
}
.about_note {
	font-size: 1.2rem;
	line-height: 1.43;
	font-feature-settings: "palt";
	margin: 3.5rem -2.5rem 0;
}
.about_note li {
	padding-left: 1.7rem;
}
.about_note li.red {
	font-weight: 500;
	color: #d02e28;
}
.about_note li::before {
	content: '※';
	position: absolute;
	left: 0;
	top: 0;
}
@media (hover:hover) {
	.about_btn:hover {
		opacity: .6;
	}
	.about_btn:hover::after {
		transform: translateX(.5rem);
	}
}
@media only screen and (max-width: 834px) {
	.about {
		padding: 3.7rem 0 4rem;
	}
	.about h2 {
		left: auto;
	}
	.about_txt {
		font-size: 1.6rem;
		margin: .1rem 0 0;
	}
	.about h3 {
		margin: .2rem auto -.5rem;
		left: auto;
	}
	.about_box {
		max-width: 33.5rem;
		border-radius: 1rem;
		padding: 2.7rem 1.6rem 3.4rem;
	}
	.about h4 {
		padding: 1.9rem 0 2rem;
		margin-bottom: 2.5rem;
	}
	.about h4 img {
		max-width: 26.6rem;
		left: auto;
	}
	.about_product {
		display: block;
	}
	.about_product > li {
		width: auto;
		gap: 0;
		flex-wrap: wrap;
		padding-bottom: 0;
	}
	.about_product > li + li {
		margin-top: 4rem;
	}
	.about_product > li figure {
		width: 9.5rem;
		top: auto;
		left: .2rem;
	}
	.about_list {
		width: calc(100% - 9.5rem);
		padding-left: 1.8rem;
		font-size: 1.2rem;
		line-height: 1.7;
		margin: -.6rem 0 0 0;
		padding-right: 0;
	}
	.about_product > li:nth-child(2n) figure {
		margin-left: 0;
	}
	.about_product > li:nth-child(2n) .about_list {
		width: calc(100% - 9.5rem);
	}
	.about_product > li:nth-child(3),
	.about_product > li:nth-child(4),
	.about_product > li:nth-child(5),
	.about_product > li:nth-child(6) {
		padding-bottom: 0;
	}
	.about_product > li:nth-child(3) .about_list {
		padding-right: 0;
	}
	.about_product > li:nth-child(5) figure,
	.about_product > li:nth-child(6) figure {
		top: auto;
	}
	.about_list li {
		padding-left: 1.5rem;
		margin-right: -.1rem;
	}
	.about_list li::before {
		width: 1rem;
		height: 1rem;
		top: .6rem;
	}
	.about_btn {
		width: 100%;
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		font-size: 1.5rem;
		padding: .9rem;
		margin: 1.4rem .2rem 0;
	}
	.about_product > li:nth-child(2) .about_btn {
		margin-top: 1.7rem;
	}
	.about_product > li:nth-child(3) .about_btn,
	.about_product > li:nth-child(4) .about_btn,
	.about_product > li:nth-child(5) .about_btn,
	.about_product > li:nth-child(6) .about_btn {
		margin-top: .9rem;
	}
	.about_btn::after {
		border-width: .5rem 0 .5rem .7rem;
		right: 1.7rem;
	}
	.about_note {
		font-size: 1rem;
		line-height: 1.4;
		margin: 2.2rem -.5rem 0;
	}
	.about_note li {
		padding-left: 1.2rem;
	}
}

/*benefit
----------------------------------------*/
.benefit h2 {
	background: #32110b;
	color: #fff;
	font-size: 3.4rem;
	border-top: .3rem solid #ffe467;
	border-bottom: .3rem solid #ffe467;
	text-align: center;
	letter-spacing: .1em;
	padding: .8rem 0 1.1rem;
}
.benefit_inner {
	background: #900e0e;
	padding: 4rem 0 4.7rem;
}
.benefit_box {
	max-width: 96rem;
	margin: 0 auto;
}
.benefit_item {
	background: #fff;
	border-radius: 2rem;
	padding: 4rem 6.5rem 4.4rem 6.5rem;
	display: flex;
	align-items: flex-end;
}
.benefit_item::after {
	content: '';
	display: block;
	background: url(../img/benefit_bg_02.png) no-repeat left top / 100% auto;
	width: 109.5rem;
	height: 15.7rem;
	position: absolute;
	top: 1.1rem;
	left: -6.8rem;
}
.benefit_txt {
	flex: 1;
	margin-top: -.6rem;
	font-feature-settings: "palt";
	padding-right: 3rem;
}
.benefit_txt h3 {
	font-size: 3.2rem;
	line-height: 1.45;
	color: #991a09;
	font-weight: 700;
}
.benefit_txt h3::before {
	content: '';
	display: block;
	background: url(../img/benefit_img_01.png) no-repeat left top / 100% auto;
	width: 16.4rem;
	height: 11.8rem;
	position: relative;
	left: -.3rem;
	margin: 0 auto .8rem;
}
.benefit_item figure {
	width: 38.4rem;
}
.benefit_deadline {
	width: 100%;
	background: #fff;
	border-radius: 2rem;
	margin-top: 4rem;
	padding: 3rem;
}
.benefit_deadline h3 {
	text-align: center;
	font-size: 3rem;
	font-weight: 900;
	color: #0b2a84;
	letter-spacing: .02em;
	padding-bottom: 1.5rem;
}
.benefit_deadline p {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.6;
	font-feature-settings: "palt";
	letter-spacing: .027em;
}
@media only screen and (max-width: 834px) {
	.benefit h2 {
		font-size: 2.5rem;
		border-top-width: .2rem;
		border-bottom-width: .2rem;
		padding: .8rem 0;
	}
	.benefit_inner {
		padding: 6.6rem 0 3.1rem;
		background: #991a09;
	}
	.benefit_box {
		width: 32.5rem;
		display: block;
	}
	.benefit_item {
		border-radius: 1rem;
		display: block;
		padding: 4.2rem 1rem 2.5rem;
	}
	.benefit_txt {
		margin-top: 0;
		padding-right: 0;
	}
	.benefit_item h3 {
		font-size: 2.25rem;
		margin-left: .5rem;
		line-height: 1.47;
		text-align: center;
	}
	.benefit_item h3::before {
		width: 11.45rem;
		height: 8.3rem;
		position: absolute;
		top: -9.2rem;
		right: 0;
		left: 0;
	}
	.benefit_item::after {
		background-image: url(../img/benefit_bg_02-sp.png);
		width: 37.5rem;
		height: 16.4rem;
		top: -5.2rem;
		left: -2.5rem;
	}
	.benefit_item figure {
		width: 28.9rem;
		margin: 1.5rem auto 0;
	}
	.benefit_item p {
		font-size: 1.3rem;
		line-height: 1.6;
		letter-spacing: .05em;
		margin: 0;
	}
	.benefit_item p span {
		font-size: 2rem;
		line-height: 1.275;
		margin-top: .5rem;
	}
	.benefit_deadline {
		border-radius: 1rem;
		margin-top: 2.9rem;
		padding: 2.2rem 1.5rem 2.3rem 1.7rem;
	}
	.benefit_deadline h3 {
		font-size: 2.2rem;
		padding-bottom: 1.4rem;
	}
	.benefit_deadline p {
		font-size: 1.4rem;
		line-height: 1.8571;
		padding-right: 0;
	}
}

/*condition
----------------------------------------*/
.condition h2 {
	background: #32110b;
	color: #fff;
	font-size: 3.4rem;
	border-top: .3rem solid #ffe467;
	border-bottom: .3rem solid #ffe467;
	text-align: center;
	letter-spacing: .1em;
	padding: .8rem 0 1.1rem;
}
.condition h2 span {
	font-size: 4rem;
	display: block;
	margin: -.4rem 0;
}
.condition_inner {
	background: #900e0e;
	padding: 3.7rem 0 4.4rem;
}
.condition_item {
	max-width: 96rem;
	margin: 0 auto;
	background: #fff;
	border-radius: 2rem;
	padding: 3.4rem 3.2rem 3rem;
}
.condition_label {
	width: 16.5rem;
	position: absolute;
	top: -2.6rem;
	left: -1.9rem;
}
.condition_item p {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.6;
	font-feature-settings: "palt";
	letter-spacing: .027em;
	padding-right: .8rem;
}
@media only screen and (max-width: 834px) {
	.condition h2 {
		font-size: 2.5rem;
		border-top-width: .2rem;
		border-bottom-width: .2rem;
		padding: .8rem 0;
	}
	.condition h2 span {
		font-size: 2.5rem;
		margin: 0 0 .1rem;
	}
	.condition_inner {
		background: #991a09;
		padding: 3rem 0 2.9rem;
	}
	.condition_item {
		max-width: 33.5rem;
		border-radius: 1rem;
		padding: 2.5rem 2.2rem 2.5rem;
	}
	.condition_item p {
		font-size: 1.4rem;
		line-height: 1.8571;
		padding-right: 0;
		letter-spacing: 0;
	}
}

/*footer
----------------------------------------*/
.footer {
	background: #fff;
	font-feature-settings: "palt";
	padding-bottom: 9.5rem;
}
.footer_detail h2 {
	background: #32110b;
	padding: .8rem 0 1rem .1em;
	text-align: center;
	color: #fff;
	font-size: 3rem;
	font-feature-settings: "palt";
	letter-spacing: .1em;
	margin-bottom: 2.8rem;
}
.footer_detail_inner > h3 {
	background: #fff390;
	border-radius: .5rem;
	text-align: center;
	font-size: 2rem;
	letter-spacing: .1em;
	padding: .6rem;
	margin: 4.1rem 0 1rem;
}
.footer_detail_inner > h3:first-child {
	margin-top: 0;
}
.footer_detail_inner {
	width: 90rem;
	margin: 0 auto;
}
.footer_detail_inner > h4 {
	text-align: center;
	font-size: 2rem;
	margin: 2.7rem 0 1.6rem;
}
.footer_detail_inner > h3 + h4 {
	margin-top: 1.9rem;
}
.footer_detail_inner > h4:first-child {
	margin-top: 0;
}
.footer_detail_inner > h4::before {
	content: '';
	display: block;
	height: .2rem;
	background: #991a09;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
}
.footer_detail_inner > h4 span {
	background: #fff;
	color: #991a09;
	display: inline-block;
	min-width: 8.9rem;
	padding: 0 2rem;
	letter-spacing: .08em;
}
.footer_detail_inner > h5 {
	font-size: 1.8rem;
	line-height: 1.6;
	color: #991a09;
	letter-spacing: .05em;
	padding: .2rem 1rem 1rem;
	margin: 3.5rem 0 .4rem;
}
.footer_detail_inner > h5.fs_l {
	font-size: 2rem;
	padding-bottom: 0;
}
.footer_detail_inner > h4 + h5 {
	margin-top: 0;
}
.footer_detail_inner > p + h5 {
	margin-top: 2.8rem;
}
.footer_detail_inner > h5 span {
	color: #d02e28;
}
.footer_detail .condition_mypage {
	width: 100%;
	padding-top: 2rem;
	margin-bottom: 3.5rem;
}
.footer_detail .condition_mypage h3 {
	padding: .7rem .5rem .9rem;
	border-radius: .5rem;
}
.footer_detail .condition_mypage h3 > span::before {
	top: 0;
	width: 2.6rem;
	height: 2.6rem;
}
.footer_detail .condition_mypage h3 > span {
	padding-right: 4rem;
}
.footer_detail_inner > p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.67;
	letter-spacing: .03em;
	margin: 0 1rem;
}
.footer_detail_inner > p strong {
	font-size: 1.8rem;
}
.footer_detail_inner > p.fw_n {
	font-weight: 400;
}
.footer_detail_inner > p span {
	color: #d02e28;
}
.footer_detail_note {
	font-size: 1.2rem;
	letter-spacing: .03em;
	line-height: 1.45;
	margin: 1.2rem 1rem 0;
}
.footer_detail_note li {
	margin-left: 1.5em;
	text-indent: -1.5em;
}
.footer_detail_note span {
	display: inline-block;
	width: 2.3rem;
	padding-left: .5rem;
	text-indent: 0;
}
.footer_detail_note.list li {
	margin-left: 1em;
	text-indent: -1em;
}
.footer_detail_note.list li span {
	width: auto;
}
.footer_detail .condition_mypage {
	margin-top: 1.5rem;
}
.footer_detail_list {
	font-size: 1.6rem;
	line-height: 1.65;
	letter-spacing: .05em;
}
.footer_detail_list li {
	margin-left: 2rem;
	text-indent: -2rem;
}
.footer_detail_list.wide > li {
	margin-left: 3.5rem;
	text-indent: -3.5rem;
}
.footer_detail_list.wide > li * {
	text-indent: 0;
}
.footer_detail_list li::before {
	content: '・';
	margin: 0 .7rem 0 .4rem;
}
.footer_detail_list li.asterisk::before {
	content: '※';
	margin: 0 .1rem 0 .2rem;
}
.footer_detail_list.wide li::before {
	content: '・';
	display: inline-block;
	width: 3.5rem;
	padding-left: .5rem;
	box-sizing: border-box;
	text-indent: 0;
	margin: 0;
}
.footer_detail_list.wide li.circle::before {
	content: '●';
}
.footer_detail_list.wide li.asterisk::before {
	content: '※';
}
.footer .mt0 {
	margin-top: 0;
}
.footer .mt25 {
	margin-top: 2.5rem;
}
.footer_detail_list + p {
	margin-top: 3.2rem;
}
p + .footer_detail_list {
	margin-top: 1rem;
}
.footer_detail_list + .footer_detail_list {
	margin-top: 2.6rem;
}
.footer_attention {
	width: 88rem;
	margin: 4.4rem auto 0;
}
.footer_attention h2 {
	font-size: 1.8rem;
	letter-spacing: .08em;
	padding-left: 4.5rem;
	margin-bottom: 2.1rem;
}
.footer_attention h2::before {
	content: '';
	display: block;
	background: url(../img/icon_attention.png) no-repeat left top / 100% auto;
	width: 3.2rem;
	height: 2.8rem;
	position: absolute;
	left: .1rem;
	top: -.1rem;
}
.footer_attention p {
	font-size: 1.6rem;
	line-height: 1.63;
	font-weight: 500;
	letter-spacing: .1em;
}
.footer_attention p strong {
	font-size: 1.8rem;
}
.footer_attention_note {
	font-size: 1.6rem;
	line-height: 1.63;
	margin-top: .2rem;
	letter-spacing: .05em;
}
.footer_attention_note li {
	margin-left: 1.7em;
	text-indent: -1.7em;
}
.footer_attention_note li::before {
	content: '※';
	margin: 0 .8rem 0 .3rem;
}
.footer_attention_note.dot li::before {
	content: '・';
	margin: 0 .8rem 0 .3rem;
}
.footer_attention_note + p {
	margin-top: 4rem;
}
.footer_attention a {
	color: #108761;
	border-bottom: 1px solid #108761;
}
.footer_attention .footer_number {
	font-size: 1.2rem;
	font-weight: 400;
	text-align: right;
	letter-spacing: .03em;
	margin-top: 5.2rem;
}
.footer_attention .footer_detail_note {
	margin: 2rem 0 0;
}
.footer_btn {
	width: 96rem;
	margin: 0 auto;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
}
.footer_btn > a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 1.5rem;
	background: #0e7655;
	color: #fff75d;
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: .075em;
	padding: .3rem 0;
	border-radius: 1.2rem 1.2rem 0 0;
	transition: opacity .3s;
}
.footer_btn a::before {
	content: '';
	display: block;
	width: 31.3rem;
	height: 5.6rem;
	background: url(../img/footer_btn_txt_01.png) no-repeat left top / 100% auto;
}
.footer_btn > a span {
	display: inline-block;
	padding-right: 3.3rem;
}
.footer_btn > a span::before {
	content: '';
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: #fff75d;
	position: absolute;
	right: 0;
	top: .6rem;
}
.footer_btn > a span::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .6rem 0 .6rem .8rem;
	border-color: transparent transparent transparent #0e7655;
	position: absolute;
	right: .7rem;
	top: 1.2rem;
}
@media (hover:hover) {
	.footer_btn a:hover {
		opacity: .6;
	}
}
@media only screen and (max-width: 834px) {
	.footer {
		padding-bottom: 10rem;
	}
	.footer_detail h2 {
		font-size: 2.5rem;
		padding: .6rem 0 .7rem .1em;
		letter-spacing: .1em;
		margin-bottom: 2.4rem;
	}
	.footer_detail_inner > h3 {
		border-radius: .5rem;
		font-size: 1.7rem;
		letter-spacing: .1em;
		padding: .5rem;
		margin: 3.8rem 0 1.2rem;
	}
	.footer_detail_inner {
		width: auto;
		margin: 0 2rem;
	}
	.footer_detail_inner > h4 {
		font-size: 1.5rem;
		margin-bottom: 1.5rem;
		margin-top: 4rem;
	}
	.footer_detail_inner > h4::before {
		height: .1rem;
	}
	.footer_detail_inner > h4 span {
		min-width: 7.5rem;
		padding: 0 1.5rem;
	}
	.footer_detail_inner > h5 {
		font-size: 1.5rem;
		padding: 0 0 .7rem;
		margin-top: 3rem;
	}
	.footer_detail_inner > p + h5 {
		margin-top: 2.2rem;
	}
	.footer_detail_inner > h5.fs_l {
		font-size: 1.5rem;
	}
	.footer_detail .condition_mypage {
		margin-top: 0;
	}
	.footer_detail .condition_mypage h3 {
		border-radius: .3rem;
	}
	.footer_detail .condition_mypage h3 > span {
		padding-right: 0;
	}
	.footer_detail .condition_mypage h3 > span::before {
		width: 2.3rem;
		height: 2.3rem;
	}
	.footer_detail_inner > p {
		font-size: 1.4rem;
		line-height: 1.6;
		letter-spacing: .03em;
		margin: 0;
	}
	.footer_detail_list {
		letter-spacing: .045em;
	}
	.footer_detail_list + p {
		margin-top: 4.8rem;
	}
	.footer_detail_inner > p strong {
		font-size: 1.4rem;
	}
	.footer_detail_note {
		font-size: 1rem;
		margin-top: .5rem;
		margin-left: 0;
		margin-right: 0;
	}
	.footer_detail_note li {
		margin-left: 1.5em;
		text-indent: -1.5em;
	}
	.footer_detail_note span {
		width: 1.5rem;
		text-indent: 0;
		padding-left: 0;
	}
	.footer_detail_note.list li {
		margin-left: 1.5em;
		text-indent: -1.5em;
	}
	.footer_detail_note.list li span {
		width: 1.5rem;
		padding-left: .3rem;
	}
	.footer_detail_list {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.footer_detail_list li {
		margin-left: 1.6rem;
		text-indent: -1.6rem;
	}
	.footer_detail_list.wide > li {
		margin-left: 2rem;
		text-indent: -2rem;
		line-height: 1.55;
	}
	.footer_detail_list li::before {
		margin: 0 .7rem 0 0;
	}
	.footer_detail_list.wide li::before {
		width: 2rem;
	}
	.footer .mt0 {
		margin-top: .6rem;
	}
	.footer_detail_list + .footer_detail_list {
		margin-top: 1.5rem;
	}
	.footer_attention {
		width: auto;
		margin: 4.2rem 1.6rem 0;
	}
	.footer_attention h2 {
		font-size: 1.5rem;
		padding-left: 4.3rem;
		margin-bottom: 1.7rem;
	}
	.footer_attention h2::before {
		width: 2.7rem;
		left: .7rem;
	}
	.footer_attention p {
		font-size: 1.5rem;
		line-height: 1.6;
	}
	.footer_attention p strong {
		font-size: 1.5rem;
	}
	.footer_attention_note {
		font-size: 1.4rem;
		line-height: 1.57;
		margin-top: .3rem;
	}
	.footer_attention_note + p {
		margin-top: 3rem;
	}
	.footer_attention .footer_detail_note {
		margin-top: 1.2rem;
	}
	.footer_attention .footer_number {
		font-size: 1rem;
		margin-top: 2.5rem;
		letter-spacing: .02em;
	}
	.footer_btn {
		width: auto;
	}
	.footer_btn::before {
		width: 17.35rem;
		height: 4rem;
		top: .7rem;
	}
	.footer_btn > a {
		width: auto;
		font-size: 1.7rem;
		letter-spacing: .03em;
		padding: 1.3rem 2.5rem .7rem 0;
	}
	.footer_btn > a::before {
		width: 17.3rem;
		height: 4.013rem;
		background-image: url(../img/cta_txt_01.png);
		position: absolute;
		top: -2.5rem;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	.footer_btn > a span {
		position: static;
		padding-right: 0;
	}
	.footer_btn > a span::before {
		width: 2.2rem;
		height: 2.2rem;
		right: 1.3rem;
		top: .5rem;
		bottom: 0;
		margin: auto 0;
	}
	.footer_btn > a span::after {
		border-width: .5rem 0 .5rem .6rem;
		right: 2.1rem;
		top: .5rem;
		bottom: 0;
		margin: auto 0;
	}
	.footer_btn p {
		margin-top: .2rem;
	}
}