@charset "utf-8";

/********************************************************************************
/*
/* root / reset
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
大枠 */

body {
	margin: 0;
}

:root {
	--font: "Noto Sans JP", sans-serif;
}

.wrap-lp_bionia_001_mr{font-family:var(--font);-moz-text-size-adjust:none;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-y:scroll;margin:0;padding:0;border:0;color:#666666;background:#1a1a1a;font-size:1.6rem;letter-spacing:0em;line-height:1.5;overflow-wrap:break-word;word-wrap:break-word;word-break:normal;text-align:left;overflow:hidden}.wrap-lp_bionia_001_mr :where(:not(audio,canvas,iframe,img,svg,video,clipPath,path,svg,symbol)){all:unset;display:revert}.wrap-lp_bionia_001_mr *,.wrap-lp_bionia_001_mr *:after,.wrap-lp_bionia_001_mr *:before{box-sizing:border-box}.wrap-lp_bionia_001_mr a,.wrap-lp_bionia_001_mr button{cursor:revert}.wrap-lp_bionia_001_mr menu,.wrap-lp_bionia_001_mr ol,.wrap-lp_bionia_001_mr summary,.wrap-lp_bionia_001_mr ul{list-style:none}.wrap-lp_bionia_001_mr ol{counter-reset:revert}.wrap-lp_bionia_001_mr img{max-inline-size:100%;max-block-size:100%}.wrap-lp_bionia_001_mr table{border-collapse:collapse}.wrap-lp_bionia_001_mr input,.wrap-lp_bionia_001_mr textarea{-webkit-user-select:auto}.wrap-lp_bionia_001_mr textarea{white-space:revert}.wrap-lp_bionia_001_mr meter{-webkit-appearance:revert;appearance:revert}.wrap-lp_bionia_001_mr :where(pre){all:revert;box-sizing:border-box}.wrap-lp_bionia_001_mr :where([hidden]){display:none}.wrap-lp_bionia_001_mr :where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}.wrap-lp_bionia_001_mr :where([draggable="true"]){-webkit-user-drag:element}.wrap-lp_bionia_001_mr :where(dialog:modal){all:revert;box-sizing:border-box}.wrap-lp_bionia_001_mr ::-webkit-details-marker{display:none}.wrap-lp_bionia_001_mr a,.wrap-lp_bionia_001_mr a dd,.wrap-lp_bionia_001_mr a div,.wrap-lp_bionia_001_mr a img,.wrap-lp_bionia_001_mr a li,.wrap-lp_bionia_001_mr a p,.wrap-lp_bionia_001_mr a:hover,.wrap-lp_bionia_001_mr a:hover div,.wrap-lp_bionia_001_mr a:hover img,.wrap-lp_bionia_001_mr a:hover p{-webkit-backface-visibility:hidden;backface-visibility:hidden}.wrap-lp_bionia_001_mr a:focus{outline:0}.wrap-lp_bionia_001_mr img{width:100%;height:auto;margin:0;padding:0;display:block}.wrap-lp_bionia_001_mr .bold,.wrap-lp_bionia_001_mr .strong{font-weight:700}.wrap-lp_bionia_001_mr a{display:inline;text-decoration:underline;color:var(--link);opacity:1;transition:.5s ease}.wrap-lp_bionia_001_mr a img{backface-visibility:hidden}
/*
*********************************************************************************
/*
/* オリジナル
/*
/*******************************************************************************/

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
CTAボタン　*/
.wrap-lp_bionia_001_mr .cta {
	position: relative;
}

.wrap-lp_bionia_001_mr .cta-btn {
	position: absolute;
	top: 107.5vw;
	left: 50%;
	transform: translate(-50%, 0%);
	width: 101.6vw;
}

.wrap-lp_bionia_001_mr #cta03 .cta-btn {
	top: -42vw;
}

.wrap-lp_bionia_001_mr .ctabtn-container__ultimate {
	position: relative;
	display: inline-block;
	line-height: 0;
	padding: 10vw;
	transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
	-webkit-tap-highlight-color: transparent;
	cursor: pointer;
	text-decoration: none;
}

/*------------------------------------------------------------------------------
光の筋 (Shine Effect) */
.wrap-lp_bionia_001_mr .ctabtn-shine {
	position: relative;
	overflow: hidden;
	display: inline-block;
	line-height: 0;
	z-index: 10;
	border-radius: 9999px;
	box-shadow: 2px 2px 6px 4px rgba(0, 0, 0, 0.2);
	transition: 0.5s ease;
}

.wrap-lp_bionia_001_mr .ctabtn-shine::after {
	content: "";
	position: absolute;
	top: -50%;
	left: -150%;
	width: 40%;
	height: 200%;
	background: linear-gradient(to right,
			rgba(255, 255, 255, 0) 0%,
			rgba(255, 255, 255, 0.4) 50%,
			rgba(255, 255, 255, 0) 100%);
	transform: rotate(25deg);
	animation: shine-move 2.5s infinite ease-in-out;
}

@keyframes shine-move {
	0% {
		left: -150%;
	}

	60% {
		left: 150%;
	}

	100% {
		left: 150%;
	}
}

/*------------------------------------------------------------------------------
全体の発光 (Soft Glow) */
.wrap-lp_bionia_001_mr .ctabtn-glow {
	line-height: 0;
	animation: pulse-glow-sp 4s infinite ease-in-out;
}

@keyframes pulse-glow-sp {

	0%,
	100% {
		filter: drop-shadow(0 0 1vw rgba(255, 255, 255, 0.2));
	}

	50% {
		filter: drop-shadow(0 0 2vw rgb(206 181 103));
	}
}

/*------------------------------------------------------------------------------
十字キラキラ */
.wrap-lp_bionia_001_mr .ctabtn-container__ultimate::before,
.wrap-lp_bionia_001_mr .ctabtn-container__ultimate::after {
	content: "";
	position: absolute;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f4d889' d='M12 0L13.5 10.5L24 12L13.5 13.5L12 24L10.5 13.5L0 12L10.5 10.5L12 0Z'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	pointer-events: none;
	opacity: 0;
	z-index: 20;
	filter: blur(0.2vw);
	animation: sparkle-anim 4s infinite ease-in-out;
}

.wrap-lp_bionia_001_mr .ctabtn-container__ultimate::before {
	width: 6vw;
	height: 6vw;
	top: 18%;
	left: 14%;
}

.wrap-lp_bionia_001_mr .ctabtn-container__ultimate::after {
	width: 5vw;
	height: 5vw;
	bottom: 18%;
	right: 14%;
	animation-delay: 2s;
}

@keyframes sparkle-anim {
	0% {
		transform: scale(0) rotate(0deg);
		opacity: 0;
	}

	15% {
		opacity: 0.8;
	}

	45% {
		transform: scale(1.1) rotate(90deg);
		opacity: 0.8;
	}

	100% {
		transform: scale(0) rotate(180deg);
		opacity: 0;
	}
}

.wrap-lp_bionia_001_mr .ctabtn-container__ultimate:hover {
	transform: scale(1.05);
}

.wrap-lp_bionia_001_mr .ctabtn-container__ultimate:active {
	transform: scale(0.95);
	transition: transform 0.1s cubic-bezier(0, 0, 0.2, 1);
}

/*------------------------------------------------------------------------------
テキスト　/　画像　 */
.wrap-lp_bionia_001_mr .cta-image {
	width: 81.6vw;
	height: auto;
	display: block;
	vertical-align: bottom;
	border-radius: 9999px;
}

.wrap-lp_bionia_001_mr .cta-bottom-txt {
	position: absolute;
	top: 161.9vw;
	font-size: 0.49rem;
	left: 50%;
	transform: translate(-50%, 0%);
	width: 81.2vw;
	letter-spacing: -0.06em;
	height: 14vw;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.wrap-lp_bionia_001_mr .cta-bottom-txt a {
	color: #2656c9;
}

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
 動画　*/
.wrap-lp_bionia_001_mr .movie-container {
	width: 100%;
	height: 91.7vw;
	position: relative;
}

.wrap-lp_bionia_001_mr .movie-container::after {
	position: absolute;
	content: "";
	background: url(../img/point-movie01-shape.webp) no-repeat center center /cover;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.wrap-lp_bionia_001_mr .movie-container-item {
	position: relative;
	width: 100%;
	aspect-ratio: 100 / 91.7;
	overflow: hidden;
}

.wrap-lp_bionia_001_mr .point-movie.point02-movie .movie-container-item {
	aspect-ratio: 100 / 100.2;
}

.wrap-lp_bionia_001_mr .movie-container-video {
	--movie-container-video__width: 145%;
	width: var(--movie-container-video__width);
	height: 100%;
	margin-left: calc((var(--movie-container-video__width) - 100%) / -2);
	object-fit: cover;
	display: block;
	margin-top: -1vw;
}

.wrap-lp_bionia_001_mr .point-movie.point02-movie .movie-container-video {
	--movie-container-video02__width: 100%;
	width: var(--movie-container-video02__width);
	margin-left: calc((var(--movie-container-video02__width) - 100%) / -2);
}

.wrap-lp_bionia_001_mr .point-movie .point-txt {
	margin-top: -13.5vw;
	position: relative;
}

.wrap-lp_bionia_001_mr .point-movie.point02-movie .movie-container {
	height: 100.2vw;
}

.wrap-lp_bionia_001_mr .point-movie.point02-movie .movie-container::after {
	background-image: url(../img/point-movie02-shape.webp);
}

/*
*********************************************************************************
/*
/* PC用
/*
/*******************************************************************************/

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .lp-container {
	width: 750px;
	margin: 0 auto;
	position: relative;
	box-shadow: 0 0 50px 30px rgb(255 255 255 / 16%);
}

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
CTAボタン　*/
.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .cta-btn {
	top: 840px;
	width: 750px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-container__ultimate {
	padding: 40px;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-glow {
	animation: pulse-glow-pc 4s infinite ease-in-out;
}

@keyframes pulse-glow-pc {

	0%,
	100% {
		filter: drop-shadow(0 0 3px rgb(255 0 0 / 15%));
	}

	50% {
		filter: drop-shadow(0 0 20px rgb(206 181 103));
	}
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-container__ultimate::before,
.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-container__ultimate::after {
	filter: blur(0.8px);
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-container__ultimate::before {
	width: 35px;
	height: 35px;
	top: 11%;
	left: 14%;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .ctabtn-container__ultimate::after {
	width: 30px;
	height: 30px;
	bottom: 14%;
	right: 14%;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .cta-image {
	width: 612px;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .cta-bottom-txt {
	top: 1217px;
	font-size: 0.95rem;
	width: 610px;
	height: 100px;
}

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
動画　*/
.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .movie-container {
	height: 690px;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .point-movie.point02-movie .movie-container {
	height: 752px;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .movie-container-video {
	margin-top: -5px;
	--movie-container-video__width: 137%;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .point-movie.point02-movie .movie-container-video {
	--movie-container-video02__width: 101%;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc .point-movie .point-txt {
	margin-top: -110px;
}

.wrap-lp_bionia_001_mr.wrap-lp_bionia_001_mr__pc #cta03 .cta-btn {
	top: -280px;
}

/* information
---------------------------------------------------------- */
.information01{
	box-sizing: border-box;
	color: #3f3f3f;
	font-size: 25px;
	font-weight: normal;
	border: 2px solid #e1e7ef;
	max-width: 750px;
	width: 100%;
	margin: min(30px,5%) auto;
	padding: 40px;
}
/* SPのみ */
@media all and (max-width: 800px) {
	.information01{
		font-size: calc(25vw / 750 * 100);
		padding: 4%;
		margin: 5% 4%;
		width: 92%;
	}
}

.information02{
	box-sizing: border-box;
	max-width: 750px;
	width: 100%;
	margin: min(30px,5%) auto;
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	color: #202020;
	background: #f8f8f8;
	padding: 20px;
}
.information02 a{
	color: #2a4fa0;
	border-bottom: 1px solid #2a4fa0;
	text-decoration: none;
}
/* SPのみ */
@media all and (max-width: 800px) {
	.information02{
		font-size: calc(28vw / 750 * 100);
		padding: 4%;
		margin: 5% 4%;
		width: 92%;
	}
}
