/* ---------------------------------------- */
/* .lp2026 */
/* 2026年LP */
/* ---------------------------------------- */

* {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
	padding: 0;
	margin: 0;
	color: #0c0c0c;
}
.container {
	padding: 0 35px;
}
.lp2026 {
	position: relative;
	margin: 0;
	padding: 0;
}
.lp2026::before {
	content: "";
	position: fixed;
	inset: 0;
	background-image: url('../images/lp2026/lp_bg.jpg');
	background-position: center;
	background-size: cover;
	opacity: 0.4;
}
.lp2026 img {
	max-width: 100%;
}

/* .lp2026__wrapper */
.lp2026__wrapper {
	position: relative;
	width: 375px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	background-color: #FFFFFF;
	box-shadow: -5px 0 0 #ffff5f, 5px 0 0 #ffff5f;
}

/* .lp2026__header */
.lp2026__header {}
.lp2026__header h1 {}
.lp2026__header a.header-logo-wrap {
	display: block;
	width: fit-content;
	margin: 0 auto;
	padding: 20px;
}
.lp2026__header img.header-pc-logo {
	display: block;
}

.lp2026__body {}
.lp2026__body .btn-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 30px;
}
.lp2026__body .btn {
	position: relative;
	display: block;
	width: 280px;
	background-color: #ffffff;
	border: solid 1px #444444;
	font-size: 15px;
	border-radius: 100px;
	color: #000000;
	line-height: 1;
	padding: 15px 30px;
	text-decoration: none;
	text-align: center;
}
.lp2026__body .btn::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 50%;
	width: 9px;
	height: 9px;
	border-style: solid;
	border-width: 1px 1px 0 0;
	border-color: #000000 #000000 transparent transparent;
	transform: translateY(-50%) rotate(45deg);
}
.lp2026__body .btn::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 1px;
	width: 100%;
	height: 100%;
	border: solid 1px #444444;
	background-color: #ffffff;
	border-radius: 100px;
	z-index: -1;
}
.lp2026__body .btn--yellow {
	
	background-color: #ffff5f;
}
.lp2026__body .btn--white {
	
	background-color: #ffffff;
}
.lp2026__body .sec-title {}
.lp2026__body .sec-title--has-underline {
	font-size: 28px;
	letter-spacing: 0.08em;
	text-align: center;
	margin-bottom: 40px;
}
.lp2026__body .sec-title--has-underline::after {
	content: "";
	display: block;
	border: solid 1px #111111;
	background-color: #ffff5f;
	width: 100%;
	height: 5px;
	margin-top: 4px;
}
.lp2026__body .vertical-text {}
.lp2026__body .vertical-title {}

/* .fv-sec */
.lp2026__body .fv-sec {
	padding-bottom: 50px;
}
.lp2026__body .fv-sec figure {}
.lp2026__body .fv-sec img {}
.lp2026__body .fv-sec .page-title {
	padding: 35px 0 40px;
}
.lp2026__body .fv-sec .page-title p {
	font-size: 13px;
	margin-bottom: 15px;
}
.lp2026__body .fv-sec .page-title h1 {
	font-size: 26px;
	line-height: 1.6;
}
.lp2026__body .fv-sec .btn-wrap {
	position: relative;
	z-index: 1;
}
.lp2026__body .fv-sec .btn-wrap .btn {}

/* .message-sec */
.lp2026__body .message-sec {
	padding: 35px 0 40px;
	background-color: #efefef;
	background-image: url(../images/lp2026/message_bg.png);
	background-size: 100%;
	background-position: top;
	background-repeat: no-repeat;
}
.lp2026__body .message-sec .vertical-text {
	writing-mode: vertical-rl;
}
.lp2026__body .message-sec .title-wrap {
	aspect-ratio: 1;
}
.lp2026__body .message-sec .vertical-title {
	margin: 0 auto;
	font-size: 22px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}
.lp2026__body .message-sec .text-wrap {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	margin: 0 auto;
	gap: 55px;
}
.lp2026__body .message-sec .text-wrap .vertical-text {
	font-size: 24px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}
.lp2026__body .message-sec .text-wrap .vertical-text--1 {}
.lp2026__body .message-sec .text-wrap .vertical-text--2 {
	margin-top: 4em;
}
.lp2026__body .message-sec .text-wrap .vertical-text--3 {
	margin-top: 9em;
}

/* .cycle-sec */
.lp2026__body .cycle-sec {
	padding: 35px 0 15px;
	background-color: #efefef;
}
.lp2026__body .cycle-sec .text-wrap {
	margin-bottom: 20px;
}
.lp2026__body .cycle-sec .text-wrap h2 {
	font-size: 28px;
	line-height: 1.6;
	margin-bottom: 25px;
}
.lp2026__body .cycle-sec .text-wrap p {
	font-size: 15px;
	line-height: 1.7;
}
.lp2026__body .cycle-sec .img-wrap {
	mix-blend-mode: multiply;
}
.lp2026__body .cycle-sec .img-wrap img {}

/* .uniqueness-sec */
.lp2026__body .uniqueness-sec {
	padding: 0 0 15px;
	background-color: #efefef;
}
.lp2026__body .uniqueness-sec .img-wrap {
	margin-bottom: 40px;
}
.lp2026__body .uniqueness-sec .img-wrap img {}
.lp2026__body .uniqueness-sec .sec-title {}
.lp2026__body .uniqueness-sec .comparison-row {
	display: flex;
	gap: 33px;
}
.lp2026__body .uniqueness-sec .comparison-row .col {
	flex: 1;
}
.lp2026__body .uniqueness-sec .comparison-row .col-left {}
.lp2026__body .uniqueness-sec .comparison-row .col-right {}
.lp2026__body .uniqueness-sec .comparison-row dl {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.lp2026__body .uniqueness-sec .comparison-row :is(dt, dd) {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	border: solid 1px #000000;
	background-color: #ffffff;
}
.lp2026__body .uniqueness-sec .comparison-row dt {
	position: relative;
	font-size: 23px;
	margin-bottom: 45%;
}
.lp2026__body .uniqueness-sec .comparison-row dt::after {
	content: "";
	position: absolute;
	top: calc(100% + 10px);
	width: 100%;
	aspect-ratio: 2.7;
	background-repeat: no-repeat;
	background-position: top, center, bottom;
	background-size: 15px;
}
.lp2026__body .uniqueness-sec .comparison-row dd {
	font-size: 19px;
}

.lp2026__body .uniqueness-sec .comparison-row .col-left dt::after {
	background-image: url(../images/lp2026/arrow01.png), url(../images/lp2026/arrow01.png), url(../images/lp2026/arrow01.png);
}
.lp2026__body .uniqueness-sec .comparison-row .col-right :is(dt, dd) {
	background-color: #ffff5f;
}
.lp2026__body .uniqueness-sec .comparison-row .col-right dt::after {
	background-image: url(../images/lp2026/arrow02.png), url(../images/lp2026/arrow02.png), url(../images/lp2026/arrow02.png);
}


/* .reassurance-sec */
.lp2026__body .reassurance-sec {
	padding: 40px 0 35px;
	background-color: #efefef;
}
.lp2026__body .reassurance-sec .sec-title {}
.lp2026__body .reassurance-sec .reassurance__ul {
	font-size: 21px;
	line-height: 2;
	list-style: none;
	padding: 0;
	margin: 0;
	letter-spacing: 0.06em;
}
.lp2026__body .reassurance-sec .reassurance__ul li {
	position: relative;
	padding: 0 0 0 0.75em;
	margin: 0 -1em 0.25em 0;
}
.lp2026__body .reassurance-sec .reassurance__ul li::before {
	content: "";
	position: absolute;
	top: 1em;
	left: 0;
	transform: translate(-50%, -50%);
	display: block;
	width: 0.4em;
	height: 0.4em;
	border-radius: 0.5em;
	background-color: #ffff5f;
	border: solid 1px #3f3f3f;
}

/* .join-sec */
.lp2026__body .join-sec {}
.lp2026__body .join-sec img {
	display: block;
}
.lp2026__body .join-sec .title-wrap {
	position: relative;
	z-index: 1;
}
.lp2026__body .join-sec .title-wrap h2 {
	position: absolute;
	right: auto;
	bottom: -1em;
	left: auto;
	padding: 0 10%;
	font-size: 28px;
}
.lp2026__body .join-sec .title-wrap h2 span {
	position: relative;
	display: inline-block;
	width: fit-content;
	background-color: #ffffff;
	border: solid 1px #3f3f3f;
	color: #000000;
	line-height: 1;
	padding: 5px 3px;
	text-decoration: none;
	text-align: center;
	margin-bottom: 0.25em;
}
.lp2026__body .join-sec .title-wrap h2 span::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 1px;
	width: 100%;
	height: 100%;
	border: solid 1px #3f3f3f;
	background-color: #ffff5f;
	z-index: -1;
}
.lp2026__body .join-sec .btn-wrap {
	position: relative;
	z-index: 1;
}
.lp2026__body .join-sec .btn-wrap .btn {
	position: absolute;
	inset: auto;
}

/* .pamphlet-sec */
.lp2026__body .pamphlet-sec {
	padding: 70px 0 140px;
}
.lp2026__body .pamphlet-sec img {
	box-shadow: 5px 5px 0 #cccccc;
	margin-bottom: 30px;
}
.lp2026__body .pamphlet-sec .btn-wrap {
	position: relative;
	z-index: 1;
}
.lp2026__body .pamphlet-sec .btn-wrap .btn {}




/* ------------------footer ----------------------------*/
.footer-line-container {
  position: relative;
  width: 100%;
  margin: 56px 0 20px 0;
  display: flex;
  justify-content: space-around;
  padding-top: 50px;
  padding-bottom: 50px;
}

.footer-line-container a {
  width: 160px;
}

.footer-line-container img {
  width: 100%;
}

.footer-line-container::before,
.footer-line-container::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px; /* 線の太さ */
  background-color: black; /* 線の色 */
}

.footer-line-container::before {
  top: 0; /* 上の線の位置 */
}

.footer-line-container::after {
  bottom: 0; /* 下の線の位置 */
}

.footer-line-container2 {
  width: 85%;
  margin-inline: auto;
}

.footer-line-container2 a {
  width: 160px;
  display: inline-block;
}

.footer-line-container2 img {
  width: 160px;
}

.footer-line-container2 p {
  margin-top: 20px;
  line-height: 2;
}

.footer-detail {
  background-color: #000;
  padding: 40px;
  color: #fff;
  margin-top: 40px;
}

.footer-detail-test {
  background-color: #000;
  padding: 40px;
  color: #fff;
  margin-top: 40px;
}

.footer-detail img {
  /* max-width: 320px; */
  width: 90%;
  max-width: 670px;
}

.footer-detail-test img {
  /* max-width: 320px; */
  width: 90%;
  max-width: 670px;
}

.footer-detail p {
  line-height: 2;
  margin-top: 40px;
  font-size: var(--fz14);
}

.footer-detail-test p {
  line-height: 2;
  margin-top: 40px;
  font-size: var(--fz14);
}

.copylight {
  text-align: center;
  font-size: var(--fz12);
  padding: 3px 0;
}

.footer-sitemap-ul-wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 56px;
}

.footer-sitemap-left-wrap {
  display: flex;
  flex-direction: column;
}

.footer-sitemap-left {
  width: 45%;
}

.footer-sitemap-left ul {
  margin-top: 0;
}

.footer-sitemap-right {
  width: 45%;
}

.footer-sitemap-right ul {
  margin-top: 0;
}

.footer-sitemap-ul-wrap ul li {
  margin-bottom: 20px;
}

.footer-sitemap-ul-wrap ul li a {
  text-decoration: none;
  color: #fff;
  font-size: var(--fz14);
}

.sitemap-title {
  font-size: var(--fz24);
  line-height: 1;
  margin-bottom: 48px;
  letter-spacing: 3px;
}

.footer-sns-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  gap: 5px;
}

.footer-sns-wrap img {
  width: 40px;
  max-width: 100%;
}