@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
.l_pageArea {
	z-index: 10;
	background: #fff;
}
.l_main {
	display: none;
}
header.markeMainHeader, main.markeMain, #markeModal {
	color: #000;
	font-family: "Arial", "Noto Sans JP", sans-serif;
	font-feature-settings: "palt";
	font-weight: 500;
	letter-spacing: 0.15em;
}
header.markeMainHeader strong, main.markeMain strong, #markeModal strong {
	font-weight: 700;
}
main.markeMain {
	line-height: 1.6;
	position: relative;
	z-index: 100;
	padding-bottom: 200px;
}
main.markeMain > section:last-child {
	margin-bottom: 0;
}
main.markeMain img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 767px){
	main.markeMain {
		padding-bottom: 100px;
	}
}
.markeBg {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	z-index: 1;
}
.markeTxtLL {
	font-size: 5rem;
}
.markeTxtL {
	font-size: 3rem;
}
.markeTxtM {
	font-size: 2rem;
}
.markeJumpM {
	font-size: 0.8em;
	vertical-align: 0.04em;
}
.markeJumpS {
	font-size: 0.6em;
	vertical-align: 0.04em;
}
.markeIB {
	display: inline-block;
}
@media screen and (max-width: 767px){
	.markeTxtLL {
		font-size: 2.2rem;
	}
	.markeTxtL {
		font-size: 1.8rem;
	}
	.markeTxtM {
		font-size: 1.3rem;
	}
	.markeJumpS {
		font-size: 0.6em;
	}
}
.markeSection {
	max-width: 1600px;
	margin: 0 auto;
	padding: 0 40px;
	position: relative;
}
@media screen and (max-width: 767px){
	.markeSection {
		padding: 0 15px;
	}
}
.markeTitle {
	text-align: center;
	font-size: 4rem;
	position: relative;
	font-weight: bold;
	margin-bottom: 38px;
	z-index: 10;
}
.markeTitle:before,.markeTitle:after {
	content: "";
	position: absolute;
	left: 50%;
	background: #000;
	transform: translateX(-50%);
}
.markeTitle:before {
	width: 2px;
	height: 50px;
	top: -80px;
}
.markeTitle:after {
	width: 8px;
	height: 8px;
	border-radius: 4px;
	top: -18px;
}
@media screen and (max-width: 767px){
	.markeTitle {
		font-size: 2.4rem;
		margin-bottom: 18px;
	}
	.markeTitle:before {
		height: 25px;
		top: -40px;
	}
	.markeTitle:after {
		width: 4px;
		height: 4px;
		border-radius: 2px;
		top: -9px;
	}
}
.markeLogo {
	width: 100%;
	overflow: hidden;
}
.markeLogo ul {
	display: flex;
	gap: 20px;
	position: relative;
	backface-visibility: visible;
}
.markeLogo ul li {
	width: 240px;
	min-width: 240px;
	background: #fff;
	border-radius: 20px;
	overflow: hidden;
}
@media screen and (max-width: 767px){
	.markeLogo ul {
		gap: 10px;
	}
	.markeLogo ul li {
		width: 150px;
		min-width: 150px;
		border-radius: 10px;
	}
}
.markeCostWrap #cost {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 100vh;
	position: sticky;
	top: 0;
}
.markeContact {
	display: flex;
	gap: 50px;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 10;
}
.markeContact .markeContactTxt01 {
	display: inline-block;
	padding: 6px 20px 6px;
	border: solid 2px #000;
	line-height: 1;
}
@media screen and (max-width: 1019px){
	.markeContact {
		display: block;
		text-align: center;
	}
	.markeContact .markeContactTxt02 {
		margin-top: 30px;
	}
}
@media screen and (max-width: 767px){
	.markeContact .markeContactTxt01 {
		padding: 3px 10px 3px;
	}
	.markeContact .markeContactTxt02 {
		margin-top: 15px;
	}
}
.markeBtn {
	margin-top: 80px;
	position: relative;
	z-index: 10;
}
.markeBtn.markeBtn--sizeS {
	margin-top: 50px;
	text-align: left;
}
.markeBtn.markeBtn--sizeSS {
	margin-top: 0;
}
.markeBtn a {
	display: block;
	position: relative;
	max-width: 500px;
	font-size: 3rem;
	color: #fff;
	background: #f01860;
	width: 100%;
	border-radius: 5em;
	line-height: 1;
	font-weight: bold;
	transition: background .5s, transform .3s;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.markeBtn.markeBtn--sizeS a {
	max-width: 320px;
	font-size: 2rem;
	margin-left: inherit;
	margin-right: inherit;
	text-align: left;
}
.markeBtn.markeBtn--sizeSS a {
	max-width: 190px;
	font-size: 1.6rem;
	margin-left: inherit;
	margin-right: inherit;
}
.markeBtn a:hover {
	background: #0068b7;
	transform: scale(0.97, 0.97);
}
.markeBtn a:after {
	content: "";
	width: 8px;
	height: 8px;
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translate(50%, -50%);
	right: 46px;
	transition: width .5s, height .5s;
	z-index: 10;
}
.markeBtn.markeBtn--sizeS a:after {
	right: 32px;
}
.markeBtn.markeBtn--sizeSS a:after {
	display: none;
}
.markeBtn a:hover:after {
	width: 40px;
	height: 40px;
}
.markeBtn a:before {
	content: "";
	position: absolute;
	width: 400%;
	height: 100%;
	background: linear-gradient(-90deg,rgba(240, 24, 96, 1) 25%, rgba(128, 48, 255, 1) 50%, rgba(0, 104, 183, 1) 75%);
	top: 0;
	right: 0;
	transform: translateX(0);
	transition: transform 1s;
}
.markeBtn.markeBtn--sizeSS a:before {
	display: none;
}
.markeBtn a:hover:before {
	transform: translateX(75%);
}
.markeBtn a > span {
	position: relative;
	display: block;
	padding: 34px 20px 36px;
	z-index: 20;
}
.markeBtn.markeBtn--sizeS a > span {
	padding: 20px 40px 20px;
}
.markeBtn.markeBtn--sizeSS a > span {
	padding: 17px 35px 17px;
}
.markeBtn a > span:before {
	content: "";
	width: 14px;
	height: 2px;
	background: #0068b7;
	position: absolute;
	top: 50%;
	right: 40px;
	transform: translate(-10px, -50%) scale(0.5);
	z-index: 10;
	opacity: 0;
	transition: transform .5s, opacity .5s, visibility .5s;
}
.markeBtn.markeBtn--sizeS a > span:before {
	right: 26px;
}
.markeBtn.markeBtn--sizeSS a > span:before {
	display: none;
}
.markeBtn a:hover > span:before {
	transform: translate(0, -50%) scale(1);
	opacity: 1;
}
.markeBtn a > span:after {
	content: "";
	width: 9px;
	height: 9px;
	border-style: solid;
	border-width: 0 2px 2px 0;
	border-color: transparent #0068b7 #0068b7 transparent;
	position: absolute;
	top: 50%;
	right: 40px;
	transform: translate(-10px, -50%) rotate(-45deg) scale(0.5);
	z-index: 10;
	opacity: 0;
	transition: transform .5s, opacity .5s, visibility .5s;
}
.markeBtn.markeBtn--sizeS a > span:after {
	right: 26px;
}
.markeBtn.markeBtn--sizeSS a > span:after {
	display: none;
}
.markeBtn a:hover > span:after {
	transform: translate(0, -50%) rotate(-45deg) scale(1);
	opacity: 1;
}
@media screen and (max-width: 767px){
	.markeBtn {
		margin-top: 30px;
	}
	.markeBtn a {
		font-size: 1.8rem;
	}
	.markeBtn a:after, .markeBtn a:hover:after {
		width: 4px;
		height: 4px;
		right: 23px;
	}
	.markeBtn.markeBtn--sizeS {
		margin-top: 20px;
	}
	.markeBtn.markeBtn--sizeS a {
		font-size: 1.4rem;
		max-width: 160px;
	}
	.markeBtn.markeBtn--sizeSS a {
		font-size: 1.2rem;
	}
	.markeBtn.markeBtn--sizeS a:after {
		right: 23px;
	}
	.markeBtn a > span {
		padding: 17px 20px 18px;
	}
	.markeBtn.markeBtn--sizeS a > span {
		padding: 13px 20px 12px;
	}
	.markeBtn.markeBtn--sizeSS a > span {
		padding: 12px 20px 11px;
	}
	.markeBtn a > span:before, .markeBtn a:hover > span:before,
	.markeBtn a > span:after, .markeBtn a:hover > span:after {
		opacity: 0;
	}
}
.markeBox {
	padding: 60px 20px 80px;
	position: relative;
}
.markeBoxBg {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	border-radius: 50px;
}
@media screen and (max-width: 767px){
	.markeBox {
		padding: 30px 20px;
	}
	.markeBoxBg {
		border-radius: 25px;
	}
}
.markeFlowWrap #flow {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 100vh;
	position: sticky;
	top: 0;
}
.markeFlow {
	display: flex;
	justify-content: center;
}
.markeFlow > ol {
	display: flex;
	gap: 30px;
	flex-direction: column;
	position: relative;
}
.markeFlow > ol > li {
	display: flex;
	gap: 30px;
	align-items: center;
}
.markeFlow > ol > li > .markeFlowNum {
	line-height: 78px;
	width: 80px;
	height: 80px;
	min-width: 80px;
	border: solid 2px #000;
	text-align: center;
	border-radius: 50%;
	position: relative;
}
.markeFlow > ol > li + li > .markeFlowNum:after {
	content: "";
	position: absolute;
	width: 2px;
	top: -32px;
	height: 0;
	left: 37px;
	background: #000;
	transition: height 1s;
	transition-delay: 1s;
}
.markeFlow > ol > li.markeAnimation--end + li.markeAnimation--start > .markeFlowNum:after {
	height: 30px;
}
.markeFlow > ol > li > .markeFlowInr > * {
	display: table-cell;
	vertical-align: middle;
}
.markeFlow > ol > li > .markeFlowInr > .markeFlowTitle {
	font-weight: bold;
	width: 250px;
	padding-right: 30px;
}
.markeFlow > ol > li > .markeFlowInr > .markeFlowTxt {
	width: calc(100% - 220px - 30px);
}
@media screen and (max-width: 839px){
	.markeFlow > ol {
		gap: 50px;
	}
	.markeFlow > ol > li {
		gap: 30px;
	}
	.markeFlow > ol > li > .markeFlowNum {
		line-height: 118px;
		width: 120px;
		height: 120px;
		min-width: 120px;
	}
	.markeFlow > ol > li + li > .markeFlowNum:after {
		top: -52px;
		height: 0;
		left: 57px;
	}
	.markeFlow > ol > li.markeAnimation--end + li.markeAnimation--start > .markeFlowNum:after {
		height: 50px;
	}
	.markeFlow > ol > li > .markeFlowInr > * {
		display: block;
	}
	.markeFlow > ol > li > .markeFlowInr > .markeFlowTitle {
		width: auto;
		padding-right: 0;
	}
	.markeFlow > ol > li > .markeFlowInr > .markeFlowTxt {
		width: auto;
	}
}
@media screen and (max-width: 767px){
	.markeFlow > ol {
		gap: 30px;
	}
	.markeFlow > ol > li {
		gap: 10px;
	}
	.markeFlow > ol > li > .markeFlowNum {
		line-height: 68px;
		width: 70px;
		height: 70px;
		min-width: 70px;
	}
	.markeFlow > ol > li + li > .markeFlowNum:after {
		top: -32px;
		height: 0;
		left: 32px;
	}
	.markeFlow > ol > li.markeAnimation--end + li.markeAnimation--start > .markeFlowNum:after {
		height: 30px;
	}
}
.markeStep .markeStepBlock {
	position: sticky;
	top: 20vh;
	padding-top: 80px;
	transition: transform 1s, opacity 1s, filter 1s;
}
.markeStep .markeStepBlock.markeAnimation--end:nth-child(1) {
	transform: scale(0.90);
	transform-origin: center top;
}
.markeStep .markeStepBlock.markeAnimation--end:nth-child(2) {
	transform: scale(0.95);
	transform-origin: center top;
}
.markeStep .markeStepBlock.markeAnimation--end:nth-child(3) {
	transform: scale(1);
	transform-origin: center top;
}
.markeStep .markeStepBlock + .markeStepBlock {
	margin-top: 200px;
}
.markeStep .markeStepBlock .markeStepBtn span {
	width: calc((100% - 50px) / 3);
	border-radius: 50px 50px 0 0;
	font-size: 2.5rem;
	text-align: center;
	padding: 0 15px;
	font-weight: bold;
	position: absolute;
	line-height: 78px;
	height: 90px;
	top: 0;
	transition: background .5s;
}
.markeStep.markeStep--tabMode .markeStepBlock .markeStepBtn span {
	cursor: pointer;
	transition: background .5s, color .5s;
}
.markeStep .markeStepBlock .markeStepBtn span.markeStepBtnCurrent {
	background: #fff;
}
.markeStep.markeStep--tabMode .markeStepBlock .markeStepBtn span.markeStepBtnActive {
	color: #0068b7;
}
.markeStep .markeStepBlock .markeStepBtn span:nth-child(1) {
	left: 0;
}
.markeStep .markeStepBlock .markeStepBtn span:nth-child(2) {
	left: 50%;
	transform: translateX(-50%);
}
.markeStep .markeStepBlock .markeStepBtn span:nth-child(3) {
	right: 0;
}
.markeStep.markeStep--tabMode .markeStepBlock .markeStepBtn span.markeStepBtnCurrent {
	animation-name: wave;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
	animation-duration: .6s;
	backface-visibility: hidden;
}
.markeStep.markeStep--tabMode .markeStepBlock:nth-child(2) .markeStepBtn span.markeStepBtnCurrent {
	animation-delay: .2s;
}
.markeStep.markeStep--tabMode .markeStepBlock:nth-child(3) .markeStepBtn span.markeStepBtnCurrent {
	animation-delay: .4s;
}
@keyframes wave {
	0%   { top: 0; }
	50%  { top: -10px; }
	100% { top: 0; }
}
.markeStep .markeStepBlock .markeStepBox {
	background: #fff;
	padding: 60px;
	display: flex;
	gap: 40px;
	margin-top: -1px;
	transition: background .5s;
}
.markeStep .markeStepBlock.markeStepBlock--left .markeStepBox {
	border-radius: 0 50px 50px 50px;
}
.markeStep .markeStepBlock.markeStepBlock--center .markeStepBox {
	border-radius: 50px;
	flex-direction: row-reverse;
}
.markeStep .markeStepBlock.markeStepBlock--right .markeStepBox {
	border-radius: 50px 0 50px 50px;
}
.markeStep .markeStepBlock:nth-child(1):has(+ .markeAnimation--end) .markeStepBtn span.markeStepBtnCurrent,
.markeStep .markeStepBlock:nth-child(1):has(+ .markeAnimation--end) .markeStepBox {
	background: #e7eeff;
}
.markeStep .markeStepBlock:nth-child(2):has(+ .markeAnimation--end) .markeStepBtn span.markeStepBtnCurrent,
.markeStep .markeStepBlock:nth-child(2):has(+ .markeAnimation--end) .markeStepBox {
	background: #e1e6f5;
}
.markeStep .markeStepBlock .markeStepBox .markeStepPic,
.markeStep .markeStepBlock .markeStepBox .markeStepCol {
	width: calc((100% - 40px) / 2);
}
.markeStep .markeStepBlock .markeStepBox .markeStepPic {
	border-radius: 30px;
	overflow: hidden;
}
.markeStep .markeStepBlock .markeStepBox .markeStepPic img {
	position: relative;
	min-height: 100%;
	object-fit: cover;
}
.markeStep .markeStepBlock .markeStepBox .markeStepTitle {
	margin-bottom: 30px;
}
.markeStep .markeStepBlock .markeStepBox .markeStepTitle span {
	display: block;
	line-height: 1;
	font-size: 2rem;
	margin-bottom: 6px;
}
.markeStep .markeStepBlock .markeStepBox .markeStepTitle strong {
	display: block;
	font-size: 4rem;
}
.markeStep .markeStepBlock .markeStepBox .markeList {
	margin-top: 28px;
}
.markeStep .markeStepBlock .markeStepBox .markeList > li {
	position: relative;
	padding-left: 30px;
}
.markeStep .markeStepBlock .markeStepBox .markeList > li + li {
	margin-top: 22px;
}
.markeStep .markeStepBlock .markeStepBox .markeList > li:before {
	content: "";
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #000;
	position: absolute;
	left: 0;
	top: 0.3em;
}
.markeStep .markeStepBlock .markeStepBox .markeList > li:after {
	content: "";
	width: 5px;
	height: 8px;
	border-style: solid;
	border-width: 0 1px 1px 0;
	border-color: transparent #fff #fff transparent;
	position: absolute;
	left: 0.37em;
	top: 0.52em;
	transform: rotate(45deg);
}
@media screen and (max-width: 767px){
	.markeStep {
		height: auto !important;
	}
	.markeStep .markeStepBlock {
		position: relative;
		top: 0;
		padding-top: 45px;
	}
	.markeStep .markeStepBlock.markeAnimation--end:nth-child(1),
	.markeStep .markeStepBlock.markeAnimation--end:nth-child(2),
	.markeStep .markeStepBlock.markeAnimation--end:nth-child(3) {
		transform: scale(1);
	}
	.markeStep .markeStepBlock + .markeStepBlock {
		margin-top: 15px;
	}
	.markeStep .markeStepBlock .markeStepBtn span {
		width: calc((100% - 20px) / 3);
		border-radius: 25px 25px 0 0;
		font-size: 1.5rem;
		padding: 0 8px;
		line-height: 43px;
		height: 45px;
	}
	.markeStep .markeStepBlock .markeStepBox {
		display: block;
		padding: 25px;
	}
	.markeStep .markeStepBlock:nth-child(1) .markeStepBox {
		border-radius: 0 25px 25px 25px;
	}
	.markeStep .markeStepBlock:nth-child(2) .markeStepBox {
		border-radius: 25px;
	}
	.markeStep .markeStepBlock:nth-child(3) .markeStepBox {
		border-radius: 25px 0 25px 25px;
	}
	.markeStep .markeStepBlock:nth-child(1):has(+ .markeAnimation--end) .markeStepBtn span.markeStepBtnCurrent,
	.markeStep .markeStepBlock:nth-child(1):has(+ .markeAnimation--end) .markeStepBox,
	.markeStep .markeStepBlock:nth-child(2):has(+ .markeAnimation--end) .markeStepBtn span.markeStepBtnCurrent,
	.markeStep .markeStepBlock:nth-child(2):has(+ .markeAnimation--end) .markeStepBox {
		background: #fff;
	}
	.markeStep.markeStep--tabMode .markeStepBlock .markeStepBtn span.markeStepBtnCurrent {
		animation: none;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepPic,
	.markeStep .markeStepBlock .markeStepBox .markeStepCol {
		width: 100%;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepPic {
		border-radius: 15px;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepPic img {
		min-height: 0;
		max-height: 25vh;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepTitle {
		margin-top: 15px;
		margin-bottom: 10px;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepTitle span {
		font-size: 1.3rem;
		margin-bottom: 0;
	}
	.markeStep .markeStepBlock .markeStepBox .markeStepTitle strong {
		font-size: 2.1rem;
	}
	.markeStep .markeStepBlock .markeStepBox .markeList {
		margin-top: 10px;
	}
	.markeStep .markeStepBlock .markeStepBox .markeList > li {
		padding-left: 18px;
	}
	.markeStep .markeStepBlock .markeStepBox .markeList > li + li {
		margin-top: 8px;
	}
	.markeStep .markeStepBlock .markeStepBox .markeList > li:before {
		width: 12px;
		height: 12px;
		top: 0.35em;
	}
	.markeStep .markeStepBlock .markeStepBox .markeList > li:after {
		width: 4px;
		height: 6px;
		left: 0.32em;
		top: 0.52em;
	}
}
.markeSolveWrap {
	margin-top: -100vh;
}
.markeSolve {
	position: sticky;
	top: 0;
	text-align: center;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100vh;
}
.markeSolve .markeSolveTxt {
	display: inline-block;
	border-radius: 5em;
	border: solid 2px #000;
	padding: 8px 50px 8px;
	position: relative;
	background-image: linear-gradient(90deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 18%, rgba(240, 24, 96, 1) 34%, rgba(128, 48, 255, 1) 50%, rgba(0, 104, 183, 1) 66%, rgba(0, 0, 0, 1) 82%, rgba(0, 0, 0, 1) 100%);
	background-clip: text;
	color: transparent;
	background-size: 600%;
	background-position-x: 0%;
	transition: background-position-x 3s;
	transition-delay: 1s;
}
.markeSolve.markeAnimation--start .markeSolveTxt {
	background-position-x: 100%;
}
.markeSolve .markeSolveTxt:before,
.markeSolve .markeSolveTxt:after {
	content: "";
	position: absolute;
	width: 60px;
	height: 60px;
	border-style: solid;
	border-color: #000;
}
.markeSolve .markeSolveTxt:before {
	border-radius: 60px 0 0 0;
	border-width: 2px 0 0 2px;
	left: -12px;
	top: -12px;
}
.markeSolve .markeSolveTxt:after {
	border-radius: 0 0 60px 0;
	border-width: 0 2px 2px 0;
	right: -12px;
	bottom: -12px;
}
@media screen and (max-width: 767px){
	.markeSolve .markeSolveTxt .markeIB {
		display: block;
	}
}
.markeWorries {
	padding-top: 60px;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: calc(58.441558% - 162px);
	position: sticky;
	top: 0;
}
.markeWorries .markeTitle {
	color: #fff;
}
.markeWorries .markeTitle:before,
.markeWorries .markeTitle:after {
	background: #fff;
}
.markeWorries .markeWorriesPic {
	position: absolute;
	width: 46.1038961%;
	right: 0;
	top: 6.66666667%;
	z-index: 10;
}
.markeWorries .markeWorriesBg {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	object-fit: cover;
	height: 100vh;
}
.markeWorries .markeWorriesList > li {
	position: absolute;
	width: 19.48051948%;
	padding-top: 17.92207792%;
	z-index: 10;
}
.markeWorries .markeWorriesList > li:nth-child(1) {
	left: 8.44155844%;
	top: 18%;
}
.markeWorries .markeWorriesList > li:nth-child(2) {
	left: 35.64935065%;
	top: 23.55555556%;
}
.markeWorries .markeWorriesList > li:nth-child(3) {
	left: 25.64935065%;
	top: 59.77777778%;
}
.markeWorries .markeWorriesList > li > div {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: url("../img/pic_worries_01.avif") 0 0 no-repeat;
	background-size: cover;
}
.markeWorries .markeWorriesList > li > div span {
	font-size: 1.62337662vw;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	font-weight: bold;
	letter-spacing: 0;
	width: 100%;
}
.markeWorries .markeAnimation.markeAnimation--end {
	opacity: 0;
	filter: blur(30px);
}
@media screen and (max-width: 1049px){
	.markeWorries {
		padding-bottom: 80%;
	}
	.markeWorries .markeWorriesPic {
		top: 20%;
	}
	.markeWorries .markeWorriesList > li:nth-child(1) {
		left: 5%;
		top: 28%;
	}
}
@media screen and (max-width: 679px){
	.markeWorries {
		padding-top: 30px;
		padding-bottom: 80%;
		min-height: 90vh;
	}
	.markeWorries .markeWorriesPic {
		width: 70%;
		top: 42%;
	}
	 .markeWorries .markeWorriesList > li {
		width: 40.90909091%;
		padding-top: 37.6362%;
	}
	.markeWorries .markeWorriesList > li:nth-child(1) {
		left: 5%;
		top: 24%;
	}
	.markeWorries .markeWorriesList > li:nth-child(2) {
		left: 45%;
		top: 14%;
	}
	.markeWorries .markeWorriesList > li:nth-child(3) {
		left: -2%;
		top: 46%;
	}
	.markeWorries .markeWorriesList > li > div span {
		font-size: 3.4090909vw;
	}
}
.markefloating {
	animation-name: floating;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
	animation-duration: 12s;
	backface-visibility: hidden;
}
li.markefloating:nth-child(2) {
	animation-duration: 15s;
}
li.markefloating:nth-child(3) {
	animation-duration: 18s;
}
@keyframes floating {
	0% {
		transform: translateY(0);
	}
	25% {
		transform: translateY(-6%);
	}
	50% {
		transform: translateY(6%);
	}
	75% {
		transform: translateY(-6%);
	}
	100% {
		transform: translateY(0);
	}
}
.markeMainVisual {
	position: relative;
	width: 100%;
}
.markeMainVisual .markeMainVisualPC {
	position: absolute;
	width: 720px;
	right: 1.94805195vw;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	overflow: hidden;
	padding: 5% 0;
}
.markeMainVisual .markeMainVisualPC > div > img {
	position: relative;
	z-index: 10;
}
.markeMainVisual .markeMainVisualWindow {
	position: absolute;
	left: 50%;
	top: 50%;
	border-radius: 6px;
	transform: translate(-13%,-55%) skew(-15deg, 15deg);
	perspective: 1126px;
	perspective-origin: right bottom;
}
.markeMainVisual .markeMainVisualWindow .markeMainVisualWindowInr {
	position: relative;
	width: 121.2%;
	height: 100%;
	white-space: nowrap;
	overflow: hidden;
	transform: rotateY(-36deg);
	transform-origin: left;
}
.markeMainVisual .markeMainVisualWindow p {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 100%;
	animation-name: slideWindow;
	animation-fill-mode: backwards;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
	animation-duration: 20s;
	backface-visibility: hidden;
	margin-left: 0;
}
@keyframes slideWindow {
	0%   { transform: translateX(0%); }
	30%  { transform: translateX(0%); }
	33%  { transform: translateX(-100%); }
	63%  { transform: translateX(-100%); }
	66%  { transform: translateX(-200%); }
	97%  { transform: translateX(-200%); }
	100% { transform: translateX(-300%); }
}
.markeMainVisual .markeMainVisualWindow p img {
	aspect-ratio: 16 / 9.5;
}
.markeMainVisual .markeMainVisualCol {
	padding: 11.03896104% 0 11.68831169% 7.79220779%;
	position: relative;
	z-index: 11;
}
.markeMainVisual .markeMainVisualTitle {
	margin-bottom: 60px;
}
.markeMainVisual .markeMainVisualTitle > span {
	display: inline-block;
	position: relative;
	font-weight: 500;
	transition: opacity 1s, filter 1s, transform 1s;
	transition-delay: .5s;
	opacity: 0;
	filter: blur(30px);
	transform: translateY(100%);
}
.markeMainVisual.markeAnimation--start .markeMainVisualTitle > span {
	opacity: 1;
	filter: blur(0px);
	transform: translateY(0%);
}
.markeMainVisual .markeMainVisualTitle > span:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: #000;
}
.markeMainVisual .markeMainVisualTitle > span:before {
	content: "";
	width: 20px;
	height: 1.6px;
	position: absolute;
	left: 30px;
	bottom: -2px;
	background: #000;
	transform: rotate(60deg);
}
.markeMainVisual .markeMainVisualTitle > strong {
	display: block;
	margin-top: 30px;
	padding-right: 40%;
	transition: opacity 1s, filter 1s, transform 1s;
	transition-delay: .5s;
	opacity: 0;
	filter: blur(30px);
	transform: translateY(80%);
}
.markeMainVisual.markeAnimation--start .markeMainVisualTitle > strong {
	opacity: 1;
	filter: blur(0px);
	transform: translateY(0%);
}
.markeMainVisual .markeMainVisualTxt {
	padding-right: 62%;
	transition: opacity 1s, filter 1s, transform 1s;
	transition-delay: .75s;
	opacity: 0;
	filter: blur(30px);
	transform: translateY(100%);
}
.markeMainVisual.markeAnimation--start .markeMainVisualTxt {
	opacity: 1;
	filter: blur(0px);
	transform: translateY(0%);
}
.markeMainVisual .markeBtn {
	transition: opacity 1s, filter 1s, transform 1s;
	transition-delay: 1s;
	opacity: 0;
	filter: blur(30px);
	transform: translateY(100%);
}
.markeMainVisual.markeAnimation--start .markeBtn {
	opacity: 1;
	filter: blur(0px);
	transform: translateY(0%);
}
.markeMainVisual .markeMainVisualBg01 {
	position: absolute;
	left: 0;
	right: 0;
	top: 66.666%;
	padding-top: 55.19480519%;
	transform: translateY(-50%);
	overflow: hidden;
}
.markeMainVisual .markeMainVisualBg01 img {
	position: absolute;
	left: 0;
	top: 0;
	width: 116.88311688vw;
	max-width: none;
	animation-name: slideMoving;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
	animation-duration: 60s;
	backface-visibility: hidden;
}
@keyframes slideMoving {
	0% {
		transform: translateX(0);
	}
	50% {
		transform: translateX(-14%);
	}
	100% {
		transform: translateX(0);
	}
}
.markeMainVisual .markeMainVisualBg02 {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	padding-top: 150%;
	overflow: hidden;
}
.markeMainVisual .markeMainVisualBg02 div {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url("../img/pic_kv_02.avif") center top no-repeat;
	background-size: 100% auto;
	transform-origin: center top;
}
.markeMainVisual.markeAnimation--start .markeMainVisualBg02 div {
	animation-name: animationBg;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
	animation-duration: 5s;
	backface-visibility: hidden;
}
@keyframes animationBg {
	0% {
		opacity: 0;
		transform: scale(1.5, 1.5);
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: scale(1, 1);
	}
}
@media screen and (min-width: 1600px){
	.markeMainVisual .markeMainVisualPC {
		right: 10vw;
	}
}
@media screen and (max-width: 1239px){
	.markeMainVisual .markeMainVisualPC {
		width: 600px;
	}
	.markeMainVisual .markeMainVisualWindow {
		border-radius: 3px;
		perspective: 950px;
	}
	.markeMainVisual .markeMainVisualCol {
		padding: 11.68831169% 0 11.68831169% 7.79220779%;
	}
	.markeMainVisual .markeMainVisualTitle {
		margin-bottom: 60px;
	}
	.markeMainVisual .markeMainVisualTitle > span:before {
		width: 20px;
		left: 30px;
		bottom: -2px;
	}
	.markeMainVisual .markeMainVisualTitle > strong {
		margin-top: 30px;
	}
}
@media screen and (max-width: 1039px){
	.markeMainVisual .markeMainVisualPC {
		width: 460px;
	}
	.markeMainVisual .markeMainVisualWindow {
		perspective: 720px;
	}
	.markeMainVisual .markeMainVisualCol {
		padding: 11.68831169% 0 11.68831169% 7.79220779%;
	}
	.markeMainVisual .markeMainVisualTitle {
		margin-bottom: 60px;
	}
	.markeMainVisual .markeMainVisualTitle > span:before {
		width: 20px;
		left: 30px;
		bottom: -2px;
	}
	.markeMainVisual .markeMainVisualTitle > strong {
		margin-top: 30px;
	}
}
@media screen and (max-width: 767px){
	.markeMainVisual .markeMainVisualPC {
		width: 320px;
		top: auto;
		bottom: 2%;
		transform: none;
	}
	.markeMainVisual .markeMainVisualWindow {
		perspective: 500px;
	}
	.markeMainVisual .markeMainVisualCol {
		padding: 80px 4% 200px;
	}
	.markeMainVisual .markeMainVisualTitle {
		margin-bottom: 10px;
	}
	.markeMainVisual .markeMainVisualTitle > span:before {
		width: 12px;
		left: 15px;
	}
	.markeMainVisual .markeMainVisualTitle > strong {
		margin-top: 15px;
		padding-right: 0;
	}
	.markeMainVisual .markeMainVisualTxt {
		padding-right: 0;
	}
}
.markeMainHeader {
	display: flex;
	padding: 20px 20px 20px 30px;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 0;
	z-index: 5000;
	width: 100%;
	transition: transform .5s;
}
.markeMainHeader--hide {
	transform: translateY(-100%);
}
.markeMainHeader .markeMainHeaderLogo {
	width: 124px;
}
.markeMainHeader .markeMainHeaderLogo img {
	width: 100%;
	height: auto;
}
.markeMainHeader .markeMainHeaderNav {
	display: flex;
	gap: 10px;
}
.markeMainHeader .markeMenu {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	background: #000;
	transition: background .5s, transform .3s;
}
.markeMainHeader .markeMenu:hover {
	background: #0068b7;
	transform: scale(0.95, 0.95);
}
.markeMainHeader .markeMenu:before,
.markeMainHeader .markeMenu:after {
	content: "";
	position: absolute;
	width: 20px;
	height: 1px;
	background: #fff;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
.markeMainHeader .markeMenu:before {
	margin-top: -3px;
}
.markeMainHeader .markeMenu:after {
	margin-top: 3px;
}
@media screen and (max-width: 767px){
	.markeMainHeader {
		padding: 10px 15px 10px 20px;
	}
	.markeMainHeader .markeMainHeaderLogo {
		width: 90px;
	}
	.markeMainHeader .markeMainHeaderNav {
		gap: 10px;
	}
	.markeMainHeader .markeMenu {
		width: 35px;
		height: 35px;
	}
	.markeMainHeader .markeMenu:before,
	.markeMainHeader .markeMenu:after {
		width: 15px;
	}
	.markeMainHeader .markeMenu:before {
		margin-top: -3px;
	}
	.markeMainHeader .markeMenu:after {
		margin-top: 3px;
	}
}
#markeWrap {
	width: 100%;
	overflow-x: clip;
	position: relative;
	z-index: 100;
}
#markeWrap .markeWrapInr {
	transition: transform 1s, filter 1s;
	will-change: transform, filter;
}
.markeMainHeader.modal--open {
	transform: translateY(-100%);
}
#markeWrap.modal--open .markeWrapInr {
	filter: blur(30px);
	transform: scale(1.005,1.005);
}
#markeModal {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,0.6);
	z-index: 8000;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s, visibility 1s;
}
#markeModal.modal--open {
	opacity: 1;
	visibility: visible;
}
#markeModal .markeModalHeader {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 20px 20px 30px;
	transition: transform .5s;
	transform: translateY(-100%);
}
#markeModal.modal--showContents .markeModalHeader {
	transform: translateY(0);
}
#markeModal .markeModalHeader .markeModalHeaderLogo {
	width: 124px;
}
#markeModal .markeModalHeader .markeModalHeaderLogo img {
	width: 100%;
	height: auto;
}
#markeModal .markeModalHeader .markeModalClose {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	background: #000;
	transition: background .5s, transform .3s;
}
#markeModal .markeModalHeader .markeModalClose:hover {
	background: #0068b7;
	transform: scale(0.95, 0.95);
}
#markeModal .markeModalHeader .markeModalClose:before,
#markeModal .markeModalHeader .markeModalClose:after {
	content: "";
	position: absolute;
	width: 20px;
	height: 1px;
	background: #fff;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
#markeModal .markeModalHeader .markeModalClose:before {
	transform: translate(-50%,-50%) rotate(-45deg);
}
#markeModal .markeModalHeader .markeModalClose:after {
	transform: translate(-50%,-50%) rotate(45deg);
}
#markeModal .markeModalContets {
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
	padding: 0 20px;
}
#markeModal .markeModalList {
	text-align: center;
}
#markeModal .markeModalList li {
	position: relative;
	transition: transform 1s, opacity 1s, visibility 1s;
	opacity: 0;
	visibility: hidden;
}
#markeModal .markeModalList li:nth-child(1) {
	transform: translateY(100%);
}
#markeModal .markeModalList li:nth-child(2) {
	transform: translateY(150%);
}
#markeModal .markeModalList li:nth-child(3) {
	transform: translateY(200%);
}
#markeModal.modal--showContents .markeModalList li {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}
#markeModal .markeModalList li:first-child:before,
#markeModal .markeModalList li:after {
	content: "";
	width: 0%;
	height: 1px;
	position: absolute;
	left: 50%;
	background: #000;
	transform: translateX(-50%);
	transition: width 1s;
	transition-delay: 0.5s;
}
#markeModal.modal--showContents .markeModalList li:first-child:before,
#markeModal.modal--showContents .markeModalList li:after {
	width: 100%;
}
#markeModal .markeModalList li:first-child:before {
	top: 0;
}
#markeModal .markeModalList li:after {
	bottom: 0;
}
#markeModal .markeModalList li a {
	display: block;
	padding: 19px 20px;
	transition: color .3s;
}
#markeModal .markeModalList li a:hover {
	color: #0068b7
}
#markeModal .markeModalList li a:before {
	content: "";
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #000;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: background .3s;
}
#markeModal .markeModalList li a:hover:before {
	background: #0068b7;
}
#markeModal .markeModalList li a:after {
	content: "";
	width: 5px;
	height: 5px;
	border-style: solid;
	border-width: 0 1px 1px 0;
	border-color: transparent #fff #fff transparent;
	position: absolute;
	right: 27.5px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	margin-top: -1px;
}
#markeModal .markeBtn {
	transition: transform 1s, opacity 1s, visibility 1s;
	transform: translateY(200%);
	opacity: 0;
	visibility: hidden;
}
#markeModal.modal--showContents .markeBtn {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width: 767px){
	#markeModal .markeModalHeader {
		padding: 10px 15px 10px 20px;
	}
	#markeModal .markeModalHeader .markeModalHeaderLogo {
		width: 90px;
	}
	#markeModal .markeModalHeader .markeModalClose {
		width: 35px;
		height: 35px;
	}
	#markeModal .markeModalHeader .markeModalClose:before,
	#markeModal .markeModalHeader .markeModalClose:after {
		width: 15px;
	}
}
.markeAnimation {
	transition: opacity 1s, filter 1s;
	opacity: 0;
	filter: blur(30px);
}
.markeAnimation--start {
	opacity: 1;
	filter: blur(0px);
}
