@charset "utf-8";

:root {
	--black: #101618;
	--gold: #cda047;
	--red: #df5b3a;
	--green: #6b7440;
	--base-width: 1200px;
	--z-overlay: 2;
	--center-x: translateX(-50%);
}

.iJuso{
	section{
		font-family: "Noto Serif JP", serif;
		color: var(--black);
	}
	img {
		display: block;
		width: 100%;
		height: auto;
	}
	sup{
		font-size: 1em;
		vertical-align: baseline;
	}
	.badge {
		position: relative;
		z-index: 2;
		display: flex;
		justify-content: center;
		width: 500px;
		margin: 50px auto 0;
	}
	.badge_item {
		width: 250px;
	}
	h2,h3{
		font-weight: 600;
	}
	.Tred{
		color: var(--red);
	}
	.anno{
		z-index: 9;
		font-weight: 400;
	}
}

.iJuso .mv {
	position: relative;
	min-width: var(--base-width);
	height: 980px;
	background: var(--black);
	overflow: hidden;
	.mv_inner {
		position: relative;
		width: 100%;
		height: 100%;
	}
	.mv_visual {
		position: absolute;
		top: 0;
		left: 50%;
		height: 100%;
		transform: var(--center-x);
	}
	.mv_visual img {
		max-width: none;
		width: auto;
		height: 100%;
	}
	.mv_visual::before,
	.mv_visual::after {
		content: "";
		position: absolute;
		top: 0;
		width: 200px;
		height: 100%;
		z-index: 1;
		pointer-events: none;
	}
	.mv_visual::before {
		left: 0;
		background: linear-gradient(to right, var(--black), transparent);
	}
	.mv_visual::after {
		right: 0;
		background: linear-gradient(to left, var(--black), transparent);
	}
	.mv_body {
		position: absolute;
		inset: 0;
		width: var(--base-width);
		margin: 0 auto;
	}
	.mv_copy,
	.mv_title,
	.mv_subtitle {
		position: absolute;
		margin: 0;
	}
	.mv_copy {
		top: 167px;
		left: 30px;
		width: 133px;
	}
	.mv_title {
		left: 50%;
		bottom: 128px;
		width: 660px;
		transform: var(--center-x);
	}
	.mv_subtitle {
		top: 167px;
		right: 15px;
		width: 220px;
	}
	.anno {
		position: absolute;
		right: 22px;
		bottom: 18px;
		margin: 0;
		color: #fff;
	}
}

.iJuso .problem {
	position: relative;
	min-width: var(--base-width);
	background: #dfe3e1;
	.problem_visual {
		position: relative;
	}
	.problem_title {
		position: absolute;
		top: 6.4%;
		left: 50%;
		width: 50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	.problem_lead {
		position: absolute;
		top: 16.2%;
		left: 50%;
		width: 41.4%;
		transform: translateX(-50%);
		z-index: 2;
	}
	.problem_result {
		position: absolute;
		left: 50%;
		top: 80%;
		width: 38.3%;
		transform: translateX(-50%);
		z-index: 2;
	}
}

.iJuso .balance {
	position: relative;
	min-width: var(--base-width);
	background: transparent;
	.balance_inner {
		position: relative;
		width: 100%;
		padding-top: 200px;
	}
	.balance_bg {
		position: absolute;
		inset: 0;
		overflow: hidden;
		z-index: 0;
		pointer-events: none;
	}
	.balance_bg::after {
		content: "";
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.12);
	}
	.balance_video {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.balance_head,
	.balance_mix,
	.balance_result {
		position: relative;
		z-index: 1;
		width: var(--base-width);
		margin: 0 auto;
	}
	.balance_head {
		padding-top: 34px;
		text-align: center;
	}
	.balance_badge {
		position: absolute;
		top: -350px;
		left: 50%;
		width: 300px;
		transform: var(--center-x);
		z-index: 2;
	}
	.balance_title {
		width: 500px;
		margin: 10px auto 0;
	}
	.balance_text {
		width: 770px;
		margin: 45px auto 0;
	}
	.balance_mix {
		width: 900px;
		margin: 50px auto 0;
		padding-bottom: 60px;
	}
	.balance_result {
		position: relative;
		width: 1040px;
		margin-top: 56px;
	}
	.balance_visual {
		position: relative;
		width: 640px;
		margin-left: 12px;
		z-index: 1;
	}
	.balance_copy {
		position: absolute;
		top: 80px;
		right: 80px;
		width: 360px;
		z-index: 2;
	}
	.anno {
		position: absolute;
		right: -180px;
		bottom: 54px;
		color: #fff;
		text-shadow: 0 0 4px rgba(0, 0, 0, 0.6);
	}
}

.iJuso .solution {
	position: relative;
	min-width: var(--base-width);
	background: url("/images/item/juso/solution_bg.jpg") no-repeat center top / cover;
	.solution_inner {
		position: relative;
		width: 100%;
		padding: 200px 0 300px;
	}
	.solution_logic {
		position: relative;
		width: var(--base-width);
		margin: 0 auto;
		padding-top: 0;
		text-align: center;
	}
	.solution_badge {
		position: absolute;
		top: -350px;
		left: 50%;
		width: 300px;
		transform: var(--center-x);
		z-index: 2;
	}
	.solution_title {
		width: 740px;
		margin: 0 auto;
	}
	.solution_circle {
		width: 1000px;
		margin: 80px auto 0;
	}
	.solution_feature {
		width: var(--base-width);
		margin: 100px auto 0;
	}
	.solution_feature_item {
		position: relative;
		margin: 0 auto;
	}
	.solution_feature_item + .solution_feature_item {
		margin-top: 150px;
	}
	.solution_feature_image {
		width: 850px;
		border-radius: 50px;
		overflow: hidden;
	}
	.solution_feature_item:nth-child(1) .solution_feature_text {
		position: absolute;
		top: 160px;
		right: 50px;
		width: 500px;
	}
	.solution_feature_item:nth-child(2) .solution_feature_image {
		margin-left: auto;
	}
	.solution_feature_item:nth-child(2) .solution_feature_text {
		position: absolute;
		top: 160px;
		left: 0;
		width: 570px;
	}
	.solution_product {
		position: relative;
		width: 100%;
		margin-top: -400px;
		padding: 92px 0 0;
	}
	.solution_product_image {
		position: relative;
		margin: 0 auto;
		z-index: 1;
	}
	.solution_product_copy {
		position: absolute;
		top: 37%;
		right: 15%;
		width: 16%;
		z-index: 2;
	}
	.anno{
		position: absolute;
		right: -3%;
		bottom: -17%;
		color: #fff;
		text-shadow: 0 0 4px rgba(0, 0, 0, 0.6);
	}
}

.CtaBg {
	padding: 50px 0 30px;
	background: var(--black);
	position: relative;
}
.CtaBg::before {
	content: "";
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	height: 30px;
	background: linear-gradient( to bottom, rgba(16,22,24,0), rgba(16,22,24,1) );
	z-index: 2;
}
.iwrap .Cta{
	padding-bottom: 80px;
	color: #fff;
	width: 600px;
	h3{
		text-align: center;
		font-family: var(--Fym);
		letter-spacing: .1em;
	}
	dt span{
		color: var(--gold);
	}
	.ctapri .onTei dt:before,
	.wariSo{
		color: var(--gold);
		border: 1px solid var(--gold);
	}
	.ctapri .thTei dt:before{
		background: var(--gold);
	}
	.ctapri .thrTu dt:before{
		color: #ddd;
		border: 1px solid #ddd;
	}
	.tuuSo{
		color: #ddd;
		border: 1px solid #ddd;
	}
	.btn a{
		background: var(--gold);
	}
}

.iJuso .trend {
	background: #e7e5e2;
	overflow: hidden;
}

.iJuso .social {
	position: relative;
	min-width: var(--base-width);
	margin-top: 150px;
	background: transparent;
	.social_inner {
		width: 100%;
		padding-bottom: 120px;
	}
	.social_bg {
		position: absolute;
		inset: 0;
		overflow: hidden;
		z-index: 0;
		pointer-events: none;
	}
	.social_bg::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 180px;
		background: linear-gradient(to bottom, rgba(255,255,255,1), rgba(255,255,255,0));
		z-index: 2;
	}
	.social_bg::after {
		content: "";
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.12);
		z-index: 1;
	}
	.social_video {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center top;
	}
	@media screen and (min-width: 1450px) {
		.social_video {
			height: auto;
		}
	}
	.social_inner_bg {
		position: relative;
		padding-top: 80px;
		background: url("/images/item/juso/social_bg.jpg") no-repeat center top / cover;
		z-index: 2;
	}
	.social_head,
	.social_data,
	.social_sns {
		position: relative;
		width: var(--base-width);
		margin: 0 auto;
	}
	.social_head {
		padding-top: 26px;
	}
	.social_title {
		position: absolute;
		top: -110px;
		right: 0;
		left: 0;
		width: 960px;
		margin: 0 auto;
		z-index: 9;
	}
	.social_data {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 980px;
		margin: 280px auto 0;
		padding: 40px 50px;
		background: rgba(255,255,255,0.92);
		border-radius: 16px;
		z-index: 3;
	}
	.social_voice {
		width: 300px;
		font-size: 26px;
		font-weight: 500;
		letter-spacing: .05em;
		line-height: 2.2;
	}
	.social_chart {
		width: 560px;
	}
	.social_chart img,
	.social_sns_item img,
	.social_sns_head img,
	.social_sns_tag img,
	.social_title img {
		display: block;
		width: 100%;
		height: auto;
	}
	.social_sns {
		margin-top: 58px;
	}
	.social_sns_head {
		width: 650px;
		margin: 0 auto;
	}
	.social_sns_tag {
		width: 280px;
		margin: 24px auto 0;
	}
	.social_sns_list {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 1110px;
		margin: 44px auto 0;
	}
	.social_sns_item {
		width: 340px;
	}
	.anno {
		position: absolute;
		right: 20px;
		bottom: 13%;
	}
}

.iJuso .doctor {
	position: relative;
	min-width: var(--base-width);
	margin-top: -270px;
	background: url("/images/item/juso/doctor_bg.jpg") no-repeat center top / cover;
	z-index: 2;
	.doctor_inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		width: var(--base-width);
		margin: 0 auto;
		padding-top: 110px;
	}
	.doctor_visual {
		width: 340px;
		flex-shrink: 0;
	}
	.doctor_content {
		width: 790px;
		padding: 10px 0 120px;
		color: #fff;
	}
	.doctor_head {
		margin-left: -60px;
	}
	.doctor_label {
		width: 370px;
	}
	.doctor_title {
		width: 520px;
		margin-top: 20px;
	}
	.doctor_product {
		width: 540px;
		margin-top: 18px;
	}
	.doctor_profile {
		margin-top: 72px;
		padding-bottom: 26px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.9);
	}
	.doctor_role {
		margin: 0;
		font-size: 20px;
		line-height: 1.8;
		font-weight: 400;
	}
	.doctor_name {
		margin: 8px 0 0;
		font-size: 28px;
		line-height: 1.6;
		font-weight: 500;
	}
	.doctor_comment {
		margin-top: 34px;
	}
	.doctor_comment p {
		margin: 0;
		font-size: 23px;
		line-height: 2;
		font-weight: 400;
		letter-spacing: 0.02em;
	}
	.doctor_comment p + p {
		margin-top: 8px;
	}
	.doctor_comment span {
		font-size: 16px;
	}
}

.iJuso .material {
	position: relative;
	min-width: var(--base-width);
	background: #e9e9e9;
	overflow: hidden;
	.material_inner {
		position: relative;
		width: 100%;
	}
	.material_head {
		position: absolute;
		top: 70px;
		left: 50%;
		width: var(--base-width);
		transform: var(--center-x);
		z-index: 3;
		text-align: center;
	}
	.material_label {
		width: 280px;
		margin: 0 auto;
	}
	.material_title {
		width: 520px;
		margin: 40px auto 0;
	}
	.material_list {
		display: flex;
		width: 100%;
	}
	.material_item {
		position: relative;
		width: 33.3333%;
		height: 1150px;
		overflow: hidden;
	}
	.material_item > video {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		z-index: 0;
	}
	.material_visual,
	.material_text {
		position: relative;
		z-index: 2;
	}
	.material_visual {
		width: 100%;
		margin-top: 300px;
	}
	.material_image {
		width: 440px;
		margin: 0 auto;
	}
	.material_text {
		margin: 86px auto 0;
	}
	.material_text p {
		width: 440px;
		margin: 0 auto;
		font-size: 26px;
		line-height: 2;
		letter-spacing: 0.08em;
		font-weight: 500;
	}
	.material_item:nth-child(3) .material_text p {
		color: #fff;
	}
}

.iJuso .concern {
	position: relative;
	min-width: var(--base-width);
	background: url("/images/item/juso/concern_bg.jpg") no-repeat center center / cover;
	.concern_inner {
		position: relative;
		width: var(--base-width);
		height: 900px;
		margin: 0 auto;
	}
	.concern_head {
		position: relative;
		padding-top: 80px;
		text-align: center;
		z-index: 2;
	}
	.concern_title {
		margin: 0;
		font-size: 62px;
		line-height: 1.3;
		letter-spacing: 0.04em;
		font-weight: 500;
	}
	.concern_visual {
		position: absolute;
		right: -60px;
		bottom: 0;
		width: 760px;
		z-index: 1;
	}
	.concern_list {
		position: absolute;
		top: 240px;
		left: 255px;
		width: 520px;
		height: 420px;
		z-index: 2;
	}
	.concern_item {
		position: absolute;
		top: 0;
		margin: 0;
		padding: 0;
		writing-mode: vertical-rl;
		text-orientation: mixed;
		font-size: 30px;
		letter-spacing: 0.08em;
		font-weight: 500;
		background: none;
	}
	.concern_item_inner {
		padding: 12px;
		background: #fff;
		line-height: 1.8;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		display: inline;
	}
	.concern_item_inner::after {
		content: none;
	}
	.concern_item:nth-child(1) {
		right: 100px;
	}
	.concern_item:nth-child(2) {
		right: 340px;
	}
	.concern_item:nth-child(3) {
		right: 520px;
	}
}

.iJuso .answer {
	position: relative;
	min-width: var(--base-width);
	.answer_inner {
		position: relative;
		height: 1700px;
	}
	.answer_visual {
		position: absolute;
		inset: 0;
		z-index: 0;
		overflow: hidden;
		background: var(--black);
	}
	.answer_image {
		position: absolute;
		left: 50%;
		height: 100%;
		transform: var(--center-x);
	}
	.answer_image::before,
	.answer_image::after {
		content: "";
		position: absolute;
		top: 0;
		width: 200px;
		height: 100%;
		z-index: 1;
		pointer-events: none;
	}
		.answer_image::before {
		left: 0;
		background: linear-gradient(to right, var(--black), transparent);
	}
	.answer_image::after {
		right: 0;
		background: linear-gradient(to left, var(--black), transparent);
	}
	.answer_image img {
		width: auto;
		height: 100%;
		max-width: none;
	}
	.answer_head {
		position: relative;
		z-index: 2;
		width: var(--base-width);
		margin: 0 auto;
		padding-top: 44px;
		text-align: center;
	}
	.answer_badge {
		position: absolute;
		top: -120px;
		left: 50%;
		width: 250px;
		transform: var(--center-x);
		z-index: 3;
	}
	.answer_lead {
		width: 700px;
		margin: 100px auto 0;
	}
	.answer_title {
		width: 900px;
		margin: 0 auto;
	}
	.answer_text {
		position: relative;
		z-index: 2;
		width: var(--base-width);
		margin: 670px auto 0;
		text-align: center;
		font-size: 32px;
		line-height: 2;
		color: #fff;
		letter-spacing: .5rem;
	}
	.answer_text span {
		display: inline-block;
		margin: 0 5px;
		padding: 8px 5px;
		background: url("/images/item/juso/gold_bg.jpg") repeat;
		line-height: 1;
		font-weight: 600;
		color: var(--black);
	}
	.anno{
		position: absolute;
		right: 70px;
		bottom: 54px;
		color: #fff;
		z-index: var(--z-overlay);
		text-shadow: 0 0 4px rgba(0, 0, 0, 0.6);
	}
}

.iJuso .howto {
	position: relative;
	min-width: var(--base-width);
	background: var(--green) url("/images/item/juso/howto_bg.jpg") repeat center top;
	overflow: hidden;
	.howto_inner {
		width: 1400px;
		margin: 0 auto;
		padding: 80px 0 120px;
	}
	.howto_head {
		text-align: center;
	}
	.howto_title_image {
		width: 356px;
		margin: 0 auto;
	}
	.howto_title_main {
		margin: 18px 0 0;
		font-size: 62px;
		line-height: 1.2;
		letter-spacing: 0.08em;
		font-weight: 500;
		color: #fff;
	}
	.howto_steps {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		column-gap: 34px;
		margin-top: 72px;
	}
	.howto_step_item {
		display: flex;
		flex-direction: column;
	}
	.howto_step_head {
		display: none;
	}
	.howto_step_visual {
		display: flex;
		align-items: flex-end;
		justify-content: center;
		width: 100%;
		height: 320px;
	}
	.howto_step_visual img{
		width: auto;
		height: 100%;
	}
	.howto_step_text {
		margin: 10px 25px 0 45px;
		font-size: 16px;
		line-height: 1.9;
		letter-spacing: 0.06em;
		color: #fff;
	}
	.howto_qa {
		position: relative;
		width: 1020px;
		margin: 86px auto 0;
		padding: 40px 48px 44px;
		color: #fff;
	}
	.howto_qa::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 24px;
		background: url("/images/item/juso/howto_qa_line_top.png") no-repeat center / 100% 100%;
	}
	.howto_qa::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 24px;
		background: url("/images/item/juso/howto_qa_line_bottom.png") no-repeat center / 100% 100%;
	}
	.howto_qa_q {
		display: flex;
		align-items: center;
		gap: 18px;
		padding-bottom: 26px;
		margin-bottom: 26px;
		border-bottom: 1px solid rgba(255,255,255,0.7);
		font-size: 34px;
		letter-spacing: 0.06em;
		font-weight: 600;
	}
	.howto_qa_q div {
		width: 100px;
		flex-shrink: 0;
	}
	.howto_qa_a {
		font-size: 24px;
		line-height: 2;
		letter-spacing: 0.06em;
	}
}

.iJuso .concept {
	position: relative;
	min-width: var(--base-width);
	background: var(--black) url("/images/item/juso/concept_bg.jpg") no-repeat center top;
	overflow: hidden;
	&::before,
	&::after {
		content: "";
		position: absolute;
		top: 0;
		width: 260px;
		height: 100%;
		pointer-events: none;
	}
	&::before {
		left: 0;
		background: linear-gradient(to right, var(--black) 0%, rgba(0, 0, 0, 0) 100%);
	}
	&::after {
		right: 0;
		background: linear-gradient(to left, var(--black) 0%, rgba(0, 0, 0, 0) 100%);
	}
	.concept_inner {
		position: relative;
		z-index: 2;
		display: flex;
		align-items: center;
		width: var(--base-width);
		margin: 0 auto;
	}
	.concept_copy {
		width: 330px;
		flex-shrink: 0;
	}
	.concept_visual {
		width: 760px;
		margin-top: 150px;
		margin-left: auto;
		flex-shrink: 0;
	}
}

.iJuso .point {
	position: relative;
	min-width: var(--base-width);
	background: #ece8e0 url("/images/item/juso/point1_bg.jpg") repeat center top;
	overflow: hidden;
	.point_inner {
		width: var(--base-width);
		margin: 0 auto;
	}
	.point_number {
		width: 120px;
		margin: -75px auto 75px;
		position: relative;
		z-index: 2;
	}
	.point_content {
		margin-top: 18px;
	}
	.point_content_row {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 1080px;
		margin: 0 auto;
	}
	.point_visual_main {
		width: 560px;
		flex-shrink: 0;
		border-radius: 40px;
		overflow: hidden;
	}

	.point_content_body {
		width: 460px;
		padding-top: 8px;
		flex-shrink: 0;
	}
	.point_content_body h3 {
		font-size: 38px;
		letter-spacing: 0.04em;
	}
	.point_content_body h3  .point_content_lead{
		font-size: 35px;
	}
	.point_item_01 .point_content_body h3 .point_content_lead{
		font-size: 26px;
	}
	.point_badge {
		width: 230px;
		margin: 22px 0 0;
	}
	.point_content_text {
		margin: 22px 0 0;
		font-size: 20px;
		line-height: 2;
		letter-spacing: 0.03em;
		font-weight: 500;
	}
	.point_content_text span {
		display: inline-block;
		padding: 1px 10px 2px;
		background: var(--green);
		color: #fff;
		line-height: 1.5;
	}
	.point_chart {
		margin-top: 34px;
	}
	.point_chart_row {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 1080px;
		margin: 0 auto;
	}
	.point_chart_title {
		width: 520px;
		flex-shrink: 0;
	}
	.point_chart_title * {
		margin: 0;
		line-height: 2;
		letter-spacing: 0.03em;
	}
	.point_chart_title h3 {
		font-size: 30px;
	}
	.point_chart_title p {
		margin-top: 18px;
		font-size: 22px;
	}
	.point_chart_visual {
		width: 520px;
		flex-shrink: 0;
	}
	.point_chart_copy {
		margin-top: 100px;
		text-align: center;
	}
	.point_chart_copy p {
		margin: 0;
		font-size: 40px;
		line-height: 1.6;
		letter-spacing: 0.08em;
		font-weight: 500;
		border-bottom: 1px solid var(--black);
		display: inline-block;
	}
	.point_chart_bottom {
		position: relative;
		width: 100vw;
		margin: 18px 0 0;
		margin-left: calc(50% - 50vw);
	}
	.point_chart_overlay {
		position: absolute;
		top: 30%;
		left: 50%;
		transform: translate(-50%, -50%);
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
		gap: 14px;
	}
	.point_chart_overlay span {
		display: block;
		flex: none;
		writing-mode: vertical-rl;
		text-orientation: mixed;
		background: rgba(255, 255, 255, 0.9);
		padding: 18px 10px;
		font-size: 50px;
		line-height: 1.4;
		letter-spacing: 0.08em;
		font-weight: 600;
	}
	.point_item_02 {
		position: relative;
		margin-top: 0;
	}
	.point_item_02 .point_number {
		width: 120px;
		margin: -54px auto 10px;
		position: relative;
		z-index: 3;
	}
	.point_item_02 .point_content {
		margin-top: 0;
	}
	.point_item_02 .point_content_row {
		position: relative;
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		margin: 0;
	}
	.point_item_02 .point_content_body {
		width: 500px;
	}
	.point_item_02 .point_content_title {
		font-size: 50px;
		line-height: 1.35;
		letter-spacing: 0.03em;
		white-space: nowrap;
	}
	.point_item_02 .point_content_text {
		margin: 26px 0 0;
		font-size: 26px;
		line-height: 2;
		letter-spacing: 0.03em;
		font-weight: 500;
	}
	.point_item_02 .point_content_text span {
		display: inline-block;
		padding: 2px 10px 3px;
		background: var(--green);
		color: #fff;
		line-height: 1.4;
	}
	.point_item_02 .point_visual_main {
		width: 1170px;
		margin-top: -340px;
		margin-right: calc(50% - 50vw);
		border-radius: 0;
	}
	.point_item_02 .point02_more{
		margin: -60px 0 -60px;
		text-align: center;
		position: relative;
		font-size: 30px;
		z-index: 3;
	}
	.point_item_02 .point02_more p{
		display: inline-block;
		background: url(/images/item/juso/point2_more_bg.png) 100%;
		color: #fff;
		width: 120px;
		height: 120px;
		line-height: 120px;
		border-radius: 50%;
		margin: 0;
	}
	.point_check {
		position: relative;
		margin-top: -30px;
		padding-bottom: 90px;
	}
	.point_check::before {
		content: "";
		position: absolute;
		top: 20px;
		left: 50%;
		transform: translateX(-50%);
		width: 100vw;
		height: calc(100% - 20px);
		background: rgba(229, 225, 217, 0.5);
		z-index: 0;
	}
	.point_check_inner {
		position: relative;
		z-index: 1;
	}
	.point_check_title {
		margin: 0;
		text-align: center;
		position: relative;
		z-index: 1;
	}
	.point_check_title img {
		display: inline-block;
		width: 260px;
		height: auto;
	}
	.point_check_list {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 920px;
		margin: 28px auto 0;
	}
	.point_check_item {
		width: 420px;
	}
	.point_check_item_image {
		position: relative;
	}
	.point_check_item_title {
		line-height: 1.8;
		letter-spacing: 0.05em;
		font-weight: 500;
		position: absolute;
		bottom: -7px;
		margin: 0;
	}
	.point_check_item_title span {
		display: inline-block;
		padding: 8px 10px;
		background: url("/images/item/juso/gold_bg.jpg") repeat;
		margin-bottom: 10px;
		font-size: 29px;
		line-height: 1;
	}
	.point_check_item_text {
		margin: 0;
		font-size: 20px;
		line-height: 2;
		letter-spacing: 0.04em;
		font-weight: 500;
		font-family: var(--Fyg);
	}
	.point_check_item_text .is_accent {
		color: var(--red);
		font-weight: 700;
		font-size: 26px;
	}
	.point_extra {
		position: relative;
		left: 50%;
		width: 100vw;
		margin-left: -50vw;
		background: url("/images/item/juso/point2_extra_bg.png") no-repeat center bottom / cover;
	}
	.point_extra_visual {
		width: 100%;
		margin: 0;
	}
	.point_extra_head {
		margin: 0;
		padding-top: 140px;
		text-align: center;
	}
	.point_extra_head img {
		margin: auto;
		width: 700px;
	}
	img.point_extra_img{
		margin-top: -120px;
	}
	.point_item_03 {
		margin-top: -60px;
	}
	.point_item_03 .point_number {
		margin: -75px auto 40px;
	}
	.point03_content {
		margin-top: 20px;
	}
	.point03_row {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 1080px;
		margin: 0 auto;
	}
	.point03_visual {
		width: 560px;
		flex-shrink: 0;
		border-radius: 40px;
		overflow: hidden;
	}
	.point03_visual img {
		width: 100%;
	}
	.point03_body {
		width: 460px;
	}
	.point03_lead {
		font-size: 30px;
	}
	.point03_title {
		font-size: 40px;
	}
	.point03_text {
		margin-top: 16px;
		font-size: 20px;
		line-height: 1.8;
	}
	.point03_text span {
		background: var(--green);
		color: #fff;
		padding: 4px 8px;
		margin-bottom: 5px;
		display: inline-block;
	}
	.point03_info {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 1080px;
		margin: 40px auto 0;
	}
	.point03_info_item {
		width: 520px;
		display: flex;
		align-items: center;
		gap: 20px;
		letter-spacing: .1em;
	}
	.point03_info_item_wrap .point03_info_item img {
		width: 180px;
	}
	.point03_info_item img {
		width: 330px;
		border-radius: 50px;
	}
	.point03_info_item p {
		font-size: 16px;
		line-height: 1.8;
		margin: 0;
	}
	.point03_info_item h3 span{
		color: var(--red);
		font-size: 25px;
	}
	.point03_check {
		margin-top: 80px;
	}
	.point03_check_row {
		position: relative;
		z-index: 1;
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 960px;
		margin: 40px auto 0;
	}
	.point03_check_body {
		width: 480px;
	}
	.point03_check_head {
		position: relative;
		margin: 0;
	}
	.point03_check_head span {
		display: inline-block;
		padding: 8px 10px;
		background: url("/images/item/juso/gold_bg.jpg") repeat;
		margin-bottom: 10px;
		font-size: 29px;
		line-height: 1;
		font-weight: 600;
	}
	.point03_check_text {
		margin-top: 16px;
		line-height: 1.8;
		font-size: 26px;
	}
	.point03_check_image {
		width: 420px;
	}
	.point03_more {
		margin: -60px 0 0;
		text-align: center;
		position: relative;
		font-size: 30px;
	}
	.point03_more p {
		display: inline-block;
		background: var(--red);
		color: #fff;
		width: 120px;
		height: 120px;
		line-height: 120px;
		border-radius: 50%;
		margin: 0;
	}
	.point03_product_row {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 1080px;
		margin: 80px auto;
	}
	.point03_product_visual {
		width: 580px;
	}
	.point03_product_visual img {
		width: 100%;
		display: block;
	}
	.point03_product_body {
		width: 460px;
	}
	.point03_product_title {
		font-size: 40px;
		margin: 10px 0 0;
	}
	.point03_product_text {
		margin-top: 14px;
		line-height: 1.8;
		font-size: 24px;
	}
	.point03_bottom {
		width: 100vw;
		margin-top: 60px;
		margin-left: calc(50% - 50vw);
	}
}

.iJuso .story {
	position: relative;
	min-width: var(--base-width);
	overflow: hidden;
	.story_bg {
		position: absolute;
		inset: 0;
		overflow: hidden;
		z-index: 0;
		pointer-events: none;
	}
	.story_bg::after {
		content: "";
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.3);
	}
	.story_video {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.story_inner {
		position: relative;
		z-index: 1;
		width: var(--base-width);
		margin: 0 auto;
		padding: 200px 0 110px;
	}
	.story_top {
		display: flex;
		align-items: center;
		gap: 46px;
		width: 1030px;
		margin: 0 auto;
	}
	.story_image {
		width: 480px;
		flex-shrink: 0;
	}
	.story_image img {
		border-radius: 28px;
	}
	.story_head {
		color: #fff;
	}
	.story_title {
		margin: 0;
		font-size: 72px;
		line-height: 1.2;
		letter-spacing: 0.08em;
		font-weight: 500;
	}
	.story_lead {
		margin: 38px 0 0;
		font-size: 36px;
		letter-spacing: 0.08em;
		font-weight: 500;
	}
	.story_text {
		width: 900px;
		margin: 50px auto 0;
		color: #fff;
		font-size: 20px;
		font-weight: 500;
		line-height: 2;
	}
}

.iJuso .message {
	position: relative;
	min-width: var(--base-width);
	.message_inner {
		position: relative;
		width: 100%;
	}
	.message_box {
		position: absolute;
		top: 18%;
		left: 50%;
		width: 54%;
		transform: translateX(-50%);
	}
	.message_label {
		padding-left: 2%;
	}
	.message_copy {
		width: 56%;
		margin-top: 60px;
	}
}

.iJuso .usage {
	min-width: var(--base-width);
	background: #f3f1ec url("/images/item/juso/usage_bg.jpg") repeat center top;
	.usage_inner {
		width: var(--base-width);
		margin: 0 auto;
		padding: 88px 0 110px;
	}
	.usage_head {
		text-align: center;
	}
	.usage_subtitle {
		font-size: 30px;
		letter-spacing: 0.08em;
		color: #a48a4f;
	}
	.usage_title {
		font-size: 60px;
		letter-spacing: 0.08em;
	}
	.usage_title .bgG {
		display: inline-block;
		margin-right: 5px;
		padding: 0 5px 5px;
		background: var(--green);
		color: #fff;
		line-height: 1.1;
	}
	.usage_title span.Fs06e{
		background: none;
		padding: 0;
		color: inherit;
		line-height: inherit;
	}
	.usage_list {
		width: 1030px;
		margin: 78px auto 0;
	}
	.usage_item {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
	}
	.usage_item + .usage_item {
		margin-top: 80px;
	}
	.usage_item:nth-child(even) {
		flex-direction: row-reverse;
	}
	.usage_body {
		width: 430px;
	}
	.usage_label {
		margin: 0;
		font-size: 22px;
		line-height: 1.4;
		letter-spacing: 0.04em;
		color: var(--green);
	}
	.usage_heading {
		font-size: 35px;
		letter-spacing: 0.06em;
		font-weight: 500;
	}
	.usage_heading span {
		color: var(--green);
		font-size: 60px;
	}
	.usage_text {
		margin: 22px 0 0;
		font-size: 26px;
		line-height: 1.9;
		letter-spacing: 0.04em;
	}
	.usage_image {
		width: 560px;
		flex-shrink: 0;
		border-radius: 50px;
		overflow: hidden;
	}
	.usage_image img {
		border-radius: 34px;
	}
}

.iJuso .review {
	min-width: var(--base-width);
	padding: 50px 0;
	background: #8a7452 url("/images/item/juso/review_bg.jpg") no-repeat center top / cover;
	.review_inner {
		width: 1400px;
		margin: 0 auto;
		padding: 72px 0 54px;
	}
	.review_head {
		text-align: center;
		color: #fff;
	}
	.review_label img {
		margin: 0 auto;
		width: 300px;
		filter: drop-shadow(3px 3px 0 rgba(0,0,0,.2)) drop-shadow(-3px 3px 0 rgba(0,0,0,.2)) drop-shadow(3px -3px 0 rgba(0,0,0,.2)) drop-shadow(-3px -3px 0 rgba(0,0,0,.2));
	}
	.review_title {
		margin: 22px 0 0;
		font-size: 78px;
		line-height: 1.2;
		letter-spacing: 0.08em;
		font-weight: 500;
		filter: drop-shadow(0 0 4px var(--black));
		text-shadow: 1px 1px 0 rgba(0, 0, 0, -.1), -1px 1px 0 rgba(0, 0, 0, .1), 1px -1px 0 rgba(0, 0, 0, .1), -1px -1px 0 rgba(0, 0, 0, .1);
	}
	.review_list {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin: 86px auto 0;
	}
	.review_item {
		width: 330px;
		border-radius: 20px;
		overflow: hidden;
		background: #fff;
		height: 446px;
	}
	.review_item_image {
		position: relative;
	}
	.review_item_age {
		position: absolute;
		right: 18px;
		bottom: -28px;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 90px;
		height: 90px;
		margin: 0;
		border-radius: 50%;
		background: #07101a;
		color: #fff;
		font-size: 32px;
		font-weight: 500;
	}
	.review_item_body {
		padding: 30px 20px;
	}
	.review_item_text {
		margin: 0;
		font-size: 21px;
		line-height: 1.95;
		letter-spacing: 0.04em;
		font-weight: 500;
	}
	.review_note {
		margin-top: 30px;
		text-align: right;
	}
}

.iJuso .qa {
	min-width: var(--base-width);
	padding: 120px 0 100px;
	.qa_inner {
		width: 930px;
		margin: 0 auto;
	}
	.qa_head {
		margin: 0 auto 60px;
		text-align: center;
		font-size: 30px;
		line-height: 2;
	}
	.qa_head img{
		width: 160px;
		display: block;
		margin: auto;
	}
	.qa_list {
		margin: 0;
		padding: 0;
	}
	.qa_question {
		display: flex;
		align-items: center;
		gap: 20px;
		margin: 0;
		border-top: 1px solid #4a4a4a;
		cursor: pointer;
	}
	.qa_question::after {
		content: "+";
		margin-left: auto;
		font-size: 36px;
		line-height: 1;
		font-weight: 400;
	}
	.qa_question.active::after {
		content: "-";
	}
	.qa_question_mark {
		display: block;
		width: 40px;
		flex-shrink: 0;
	}
	.qa_question_text {
		flex: 1;
		font-size: 18px;
		line-height: 1.6;
		letter-spacing: 0.08em;
		font-weight: 700;
	}
	.qa_answer {
		margin: 0;
		padding: 18px 0 34px;
	}
	.qa_answer:last-of-type {
		border-bottom: 1px solid #4a4a4a;
	}
	.qa_answer_mark {
		display: inline-block;
		width: 29px;
		vertical-align: top;
	}
	.qa_answer_text {
		display: inline-block;
		width: calc(100% - 100px);
		margin: 0 0 0 20px;
		font-size: 18px;
		line-height: 1.8;
		letter-spacing: 0.08em;
		vertical-align: top;
	}
}

.iJuso .final {
	position: relative;
	background: url("/images/item/juso/final_bg.jpg") center center / cover no-repeat;
	padding-bottom: 2%;
	&::after {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 200px;
		background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fff 100%);
		pointer-events: none;
	}
	.final_inner {
		padding-top: 80px;
	}
	.final_label {
		width: 420px;
		margin: 0 auto;
	}
	.final_title {
		width: 630px;
		margin: 20px auto 0;
	}
	.final_visual {
		width: 33%;
		margin: 40px auto 0;
	}
	.anno{
		position: absolute;
		right: 22px;
		bottom: 0;
		margin: 0;
	}
}

.iwrap .qa dd.acoB{
	border-left: 0;
}
.iwrap .qa dt.acoA, .iwrap .qa dd.acoB{
	padding: 30px;
}
.compo dl{
	width: auto;
}
.iwrap .buyReg .ctapri2 dt img{
	width: 150px;
}
span.Fs06e{
	background: none;
	padding: 0;
	color: inherit;
	line-height: inherit;
}
#Buy .Tred{
	color: var(--ReD);
}
