@charset "shift_jis";

body{
	font-family: 'Heebo', 'Noto Sans CJK JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	overflow-x: hidden;
}
/* layout
------------------------------------------------------ */
a:visited,
a:link{
	color: #333;
}
p,ul,ol,div {
	color: #333;
}
@media screen and (min-width: 751px) {
	/* util
	------------------------------------------------------ */
	[data-link="blank01"] {
		padding-right: 22px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 1px bottom 7px / 17px;
	}
	[data-link="blank02"] {
		padding-right: 33px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 2px bottom 50% / 21px;
	}
	[data-link="blank03"] {
		padding-right: 27px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 2px bottom 50% / 17px;
	}
	/* override
	------------------------------------------------------ */
	body {
		min-width: 1230px;
		font-size: 1.6rem;
		background-color: #fff;
		overflow-x: hidden;
	}
	body .snsArea {
		margin-top: 35px;
		margin-bottom: 0;
	}
	/* header
	------------------------------------------------------ */
	#header {
		position: relative;
		width: 100%;
		margin: 0 auto;
		padding: 0;
		background-color: #fff;
		border: none;
		z-index: 1;
	}
	#headerLogo {
		width: 1230px;
		margin: 0 auto;
		padding: 13px 15px;
	}
	#header #headerLogo img {
		height: 28px;
	}
	/* layout
	------------------------------------------------------ */
	#mainContainer {
		position: relative;
		margin-top: 0;
	}
	#mainContents{
		width: 1230px;
		padding: 55px 15px 60px;
	}
	/* footer
	------------------------------------------------------ */
	#footer {
		width: 100%;
		margin-top: 0;
		padding: 0;
		border: none;
		background-image: linear-gradient(to right,#29ccb1 0%,#14bdcc 100%);
		text-align: center;
		
	}
	#footer .footerInner {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 60px;
		text-align: center;
	}
	#copyright {
		font-size: 1.4rem;
		color: #fff;
	}
	/* mainVisual
	------------------------------------------------------ */
	.mainVisual {
		width: max(797px,calc(1230 / 1920 * 100vw));
		margin: 0 auto;
		padding: 0 15px;
	}
	.mainVisual .mainVisualInner {
		position: relative;
		margin-right: min(0px,calc((100vw - 100%) / 2 * -1));
		padding: max(45px,calc(70 / 1920 * 100vw)) max(0px,calc((100vw - 100%) / 2)) max(42px,calc(65 / 1920 * 100vw)) 0;
		background-image: url("/gecard/mirrativoshikatu/img-files/index_bg01_pc.webp"),linear-gradient(90deg,#29ccb1,#14bdcc);
		background-repeat: no-repeat,no-repeat;
		background-position: 0 50%,0 0;
		background-size: cover,100%;
		border-radius: max(13px,calc(20 / 1920 * 100vw)) 0 0 max(13px,calc(20 / 1920 * 100vw));
	}
	.mainVisual .mainVisualInner >:first-child {
		margin-top: 0 !important;
	}
	.mainVisual .mainVisualMedia {
		display: flex;
		align-items: center;
		width: max(778px,calc(1200 / 1920 * 100vw));
		margin: 20px auto 0;
	}
	.mainVisual .mainVisualMediaHead {
		flex-grow: 1;
		padding-left: 22px;
	}
	.mainVisual .mainVisualMediaBody {
		width: max(311px,calc(480 / 1920 * 100vw));
	}
	.mainVisual .mainVisualMediaHead >:first-child,
	.mainVisual .mainVisualMediaBody >:first-child {
		margin-top: 0 !important;
	}
	.mainVisual .mainVisualCardWrap {
		display: flex;
		justify-content: center;
		flex-flow: wrap;
		gap: max(7px,calc(10 / 1920 * 100vw));
		margin: 15px auto 0;
	}
	.mainVisual .mainVisualCard {
		width: max(148px,calc(230 / 1920 * 100vw));
	}
	.mainVisual .mainVisualTitle {
		width: max(377px,calc(582 / 1920 * 100vw));
		margin: 0 auto;
		text-align: center;
	}
	.mainVisual .mainVisualText01 {
		width: max(367px,calc(567 / 1920 * 100vw));
		margin: max(8px,calc(12 / 1920 * 100vw)) auto 0;
		text-align: center;
	}
	.mainVisual .mainVisualScrolldown {
		position: absolute;
		left: -54px;
		top: 50%;
		width: 4px;
		height: 142px;
		margin-top: -71px;
	}
	.mainVisual .mainVisualScrolldown::before {
		content: "";
		position: absolute;
		bottom: 0;
		left: -5px;
		width: 14px;
		height: 14px;
		border-radius: 50%;
		background: #29ccb1;
		animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
	}
	.mainVisual .mainVisualScrolldown::after {
		content:"";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(#29ccb1,#14bdcc);
	}
	.mainVisual .mainVisualScrolldown > span {
		position: absolute;
		left: 14px;
		bottom: 0;
		top: 0;
		margin: auto;
		width: 16px;
		height: 52px;
	}
	/* module
	------------------------------------------------------ */
	/* bg */
	.oshikatsu-bg01 {
		margin: 100px min(-15px,calc((100vw - 100%) / 2 * -1)) 57px;
		padding: 70px max(15px,calc((100vw - 100%) / 2)) 100px;
		background-image: url("/gecard/mirrativoshikatu/img-files/index_bg02_pc.webp"),linear-gradient(90deg,#29ccb1,#14bdcc);
		background-repeat: no-repeat,no-repeat;
		background-position: center 112px,0 0;
		background-size: 1920px,100%;
	}
	.oshikatsu-bg01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-bg01 + * {
		margin-top: 0 !important;
	}
	/* section */
	.oshikatsu-section01 {
		margin-top: 80px;
	}
	.oshikatsu-section01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section02 {
		margin-top: 70px;
	}
	.oshikatsu-section02 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section03 {
		width: 940px;
		margin: 80px auto 0;
	}
	.oshikatsu-section03 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section04 {
		margin-top: 40px;
	}
	.oshikatsu-section04 + .oshikatsu-section04 {
		margin-top: 50px;
	}
	.oshikatsu-section04 >:first-child {
		margin-top: 0 !important;
	}
	/* heading */
	.oshikatsu-heading02 {
		margin-top: 40px;
		text-align: center;
	}
	.oshikatsu-heading02-2 {
		margin-top: 30px;
		text-align: center;
	}
	.oshikatsu-heading03 {
		margin-top: 20px;
		margin-bottom: 25px;
	}
	.oshikatsu-heading03 .oshikatsu-heading03Title {
		font-size: 2.6rem;
		font-weight: bold;
		line-height: 1.3;
	}
	/* text */
	.oshikatsu-text01 {
		margin-top: 38px;
		text-align: center;
		font-size: 2.4rem;
	}
	.oshikatsu-text02 {
		margin-top: 20px;
		font-size: 1.6rem;
		line-height: 1.6;
	}
	.oshikatsu-text03 {
		margin-top: 15px;
		text-align: center;
		font-size: 1.6rem;
	}
	.oshikatsu-extext01 {
		margin-top: 15px;
		text-align: center;
		font-size: 3.4rem;
		font-weight: bold;
	}
	.oshikatsu-extext01 .text {
		display: inline-block;
		position: relative;
		padding: 0 36px;
	}
	.oshikatsu-extext01 .text::before,
	.oshikatsu-extext01 .text::after {
		content: '';
		position: absolute;
		bottom: 7px;
		width: 4px;
		height: 40px;
		border-radius: 2px;
		background-color: #90ebe4;
	}
	.oshikatsu-extext01 .text::before {
		left: 10px;
		transform: rotate(-30deg);
	}
	.oshikatsu-extext01 .text::after {
		right: 10px;
		transform: rotate(30deg);
	}
	.oshikatsu-extext02 {
		margin-top: 20px;
		text-align: center;
		font-size: 3rem;
		color: #fff;
	}
	.oshikatsu-extext02 img {
		margin-left: 10px;
		vertical-align: middle;
	}
	/* list */
	.nest >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-list {
		margin-top: 30px;
	}
	.oshikatsu-list > li {
		position: relative;
		padding-left: 14px;
		font-size: 1.6rem;
		line-height: 1.3;
	}
	.oshikatsu-list > li + li {
		margin-top: 9px;
	}
	.oshikatsu-list > li::before {
		content: '';
		position: absolute;
		top: 6px;
		left: 0;
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background-color: #1fc5be;
	}
	.oshikatsu-list02 {
		margin-top: 20px;
	}
	.oshikatsu-list02 > li {
		position: relative;
		padding-left: 16px;
		font-size: 1.6rem;
		line-height: 1.3;
	}
	.oshikatsu-list02 > li + li {
		margin-top: 9px;
	}
	.oshikatsu-list02 > li::before {
		content: '';
		position: absolute;
		top: 6px;
		left: 2px;
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background-color: #1fc5be;
	}
	.oshikatsu-notelist01 {
		margin: 35px auto 32px;
		width: 756px;
	}
	.oshikatsu-notelist01 > li {
		position: relative;
		padding-left: 14px;
		font-size: 1.4rem;
		line-height: 1.45;
	}
	.oshikatsu-notelist01 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-notelist02 {
		margin-top: 10px;
	}
	.oshikatsu-notelist02 > li {
		position: relative;
		padding-left: 14px;
		font-size: 1.4rem;
	}
	.oshikatsu-notelist02 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-definitionlistWrap {
		width: 860px;
		margin: 32px auto 0;
		padding: 10px;
		background-color: #f0f8f8;
	}
	.oshikatsu-definitionlistWrap >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-definitionlist {
		display: flex;
		min-height: 42px;
		margin-top: 3px;
	}
	.oshikatsu-definitionlist dt {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 118px;
		padding: 6px 10px;
		background-color: #22b4b0;
		text-align: center;
		font-size: 1.3rem;
		color: #fff;
		font-weight: bold;
	}
	.oshikatsu-definitionlist dd {
		flex-grow: 1;
		display: flex;
		align-items: center;
		padding: 9px 10px;
		background-color: #fff;
		font-size: 1.5rem;
	}
	.oshikatsu-definitionlist dd .small {
		font-size: 1.2rem;
	}
	.oshikatsu-definitionlist dd .note {
		position: relative;
		margin-top: 3px;
		padding-left: 12px;
		font-size: 1.2rem;
	}
	.oshikatsu-definitionlist dd .note >.mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-orderlist {
		margin-top: 23px;
	}
	.oshikatsu-orderlist > li {
		position: relative;
		padding-left: 30px;
		font-size: 1.6rem;
	}
	.oshikatsu-orderlist > li + li {
		margin-top: 12px;
	}
	.oshikatsu-orderlist > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
		color: #22b4b0;
	}
	/* box */
	.oshikatsu-box01 {
		margin-top: 23px;
		padding: 40px 130px 45px;
		border-radius: 20px;
		background-color: #fff;
		box-shadow: 5px 5px 0 0 rgba(3,125,125,0.3);
	}
	.oshikatsu-box01 + .oshikatsu-box01 {
		margin-top: 50px;
	}
	.oshikatsu-box01 >:first-child {
		margin-top: 0!important;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle {
		margin-top: 20px;
		text-align: center;
		font-size: 3.4rem;
		font-weight: bold;
		line-height: 1.7;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle .text {
		background: linear-gradient(transparent 60%, #ffe114 60%, #ffe114 85%, transparent 85%);
	}
	.oshikatsu-box01 .oshikatsu-boxTitle02 {
		margin-top: 15px;
		text-align: center;
		font-size: 2.6rem;
		font-weight: bold;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle02 .text {
		background: linear-gradient(transparent 60%, #d2f3f2 60%, #d2f3f2 90%, transparent 90%);
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight01 {
		margin-top: 30px;
		padding: 25px 20px 15px;
		border-radius: 20px;
		background-color: #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 {
		position: relative;
		margin-top: 40px;
		margin-bottom: 40px;
		padding: 15px 45px 30px;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::before,
	.oshikatsu-box01 .oshikatsu-boxHighlight02::after {
		content: '';
		position: absolute;
		width: 80px;
		height: 80px;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::before {
		left: 0;
		top: 0;
		border-top: 2px solid #d2f3f2;
		border-left: 2px solid #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::after {
		right: 0;
		bottom: 0;
		border-right: 2px solid #d2f3f2;
		border-bottom: 2px solid #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 .oshikatsu-boxHighlightInner {
		position: relative;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 .oshikatsu-boxHighlightInner >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box01 .oshikatsu-boxText01 {
		margin-top: 15px;
		text-align: center;
		font-size: 3rem;
		line-height: 1.4;
	}
	.oshikatsu-box01 .oshikatsu-boxText01 img {
		margin-left: 8px;
		vertical-align: middle;
	}
	.oshikatsu-box01 .oshikatsu-boxText02 {
		margin-top: 5px;
		text-align: center;
		font-size: 1.6rem;
	}
	.oshikatsu-box01 .oshikatsu-boxText03 {
		margin-top: 10px;
		text-align: center;
		font-size: 2rem;
		line-height: 1.4;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 {
		margin-top: 7px;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 > li {
		position: relative;
		padding-top: 6px;
		padding-left: 60px;
		font-size: 2.8rem;
		line-height: 1.25;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 > li::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 41px;
		height: 41px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic04.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-box01 .oshikatsu-button02 {
		margin-top: 47px;
	}
	.oshikatsu-box02 {
		margin-top: 15px;
		padding: 43px 41px 35px;
		background-image: url("/gecard/mirrativoshikatu/img-files/index_bg03.webp"),url("/gecard/mirrativoshikatu/img-files/index_bg03.webp");
		background-repeat: repeat-x,repeat-x;
		background-position: 0 0,bottom left;
		background-size: 10px,10px;
	}
	.oshikatsu-box02 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box02 .oshikatsu-boxTitle {
		display: inline-block;
		margin-top: 15px;
		padding-bottom: 6px;
		border-bottom: 4px solid #6fdad7;
		font-size: 3rem;
		line-height: 1.2;
	}
	.oshikatsu-box02 .oshikatsu-boxText01 {
		margin-top: 15px;
		font-size: 2rem;
		line-height: 1.6;
	}
	/* button */
	.oshikatsu-button01 {
		position: relative;
		margin: 30px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-button01::before {
		content: '';
		position: absolute;
		top: 10px;
		left: 6px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-button01 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 750px;
		min-height: 90px;
		padding: 5px 75px;
		border-radius: 50px;
		background-image: linear-gradient(90deg,#ff4ac1,#8727f3);
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-button01 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 30px;
		width: 40px;
		height: 40px;
		margin-top: -20px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button01:hover a {
		transform: translate(6px,10px);
	}
	.oshikatsu-button02 {
		position: relative;
		margin: 20px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-button02::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 3px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-button02 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-height: 70px;
		padding: 3px 43px 3px 23px;
		border: 3px solid #22b4b0;
		border-radius: 50px;
		background-color: #fff;
		text-align: center;
		font-size: 2rem;
		color: #22b4b0;
		text-decoration: none;
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-button02 a[data-type="normal"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 19px;
		width: 10px;
		height: 18px;
		margin-top: -9px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic11.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button02 a[data-type="anchor"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 15px;
		width: 19px;
		height: 12px;
		margin-top: -6px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic02.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button02 a[data-type="blank"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 16px;
		width: 21px;
		height: 17px;
		margin-top: -8.5px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button02:hover a {
		transform: translate(3px,5px);
	}
	.oshikatsu-button03 {
		margin-top: 20px;
		margin-bottom: 10px;
		text-align: center;
	}
	.oshikatsu-button03 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 350px;
		min-height: 60px;
		padding: 5px 45px;
		border: 2px solid #22b4b0;
		background-color: #fff;
		text-align: center;
		font-size: 2rem;
		color: inherit;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s all ease-out;
	}
	.oshikatsu-button03 a:hover {
		background-color: #22b4b0;
		color: #fff;
	}
	.oshikatsu-button03 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 22px;
		width: 10px;
		height: 16px;
		margin-top: -8px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic05.webp") no-repeat 0 0 / contain;
		transition: 0.3s all ease-out;
	}
	.oshikatsu-button03 a:hover::before {
		background: url("/gecard/mirrativoshikatu/img-files/index_ic06.webp") no-repeat 0 0 / contain;
	}
	/* media */
	.oshikatsu-media01 {
		display: flex;
		align-items: center;
		gap: 26px;
		margin-top: 33px;
	}
	.oshikatsu-media01 .oshikatsu-mediaHead {
		flex-shrink: 0;
		width: 417px;
	}
	.oshikatsu-media01 .oshikatsu-mediaBody {
		flex-grow: 1;
		padding: 30px 30px 38px;
		border-radius: 20px;
		background-color: #fff;
		box-shadow: 5px 5px 0 0 rgba(3,125,125,0.4);
	}
	.oshikatsu-media01 .oshikatsu-mediaHead >:first-child,
	.oshikatsu-media01 .oshikatsu-mediaBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-media01 .oshikatsu-mediaImage01 {
		margin-top: 15px;
		text-align: center;
	}
	.oshikatsu-media01 .oshikatsu-mediaLead {
		margin-top: 15px;
		font-size: 3.2rem;
		line-height: 1.15;
	}
	.oshikatsu-media01 .oshikatsu-mediaLead .underline {
		background: linear-gradient(transparent 45%, #ffe114 45%, #ffe114 90%, transparent 90%);
	}
	.oshikatsu-media01 .oshikatsu-mediaLead .large {
		font-size: 4rem;
		font-weight: bold;
	}
	/* step */
	.oshikatsu-stepWrap {
		margin-top: 33px;
	}
	.oshikatsu-stepWrap >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-step {
		position: relative;
		margin-top: 96px;
	}
	.oshikatsu-step + .oshikatsu-step::before {
		content: '';
		position: absolute;
		top: calc((96px / 2 + 30px / 2) * -1);
		right: 0;
		left: 0;
		width: 43px;
		height: 30px;
		margin: auto;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic09.webp") no-repeat 0 0/ contain;
	}
	.oshikatsu-step .oshikatsu-stepHead >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-step .oshikatsu-stepTitle {
		display: flex;
		align-items: center;
		gap: 27px;
		min-height: 50px;
		margin-top: 15px;
	}
	.oshikatsu-step .oshikatsu-stepTitle .num {
		flex-shrink: 0;
		position: relative;
		padding-right: 22px;
	}
	.oshikatsu-step .oshikatsu-stepTitle .num::after {
		content: '';
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: 4px;
		height: 50px;
		margin: auto;
		border-radius: 2px;
		background-color: #bce8e7;
	}
	.oshikatsu-step .oshikatsu-stepTitle .text {
		font-size: 3rem;
		line-height: 1.3;
	}
	.oshikatsu-stepText01 {
		margin-top: 10px;
		font-size: 2rem;
	}
	.oshikatsu-step .oshikatsu-stepNotetext01 {
		position: relative;
		margin-left: 144px;
		padding-left: 20px;
		font-size: 2rem;
	}
	.oshikatsu-step .oshikatsu-stepNotetext01 > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-step .oshikatsu-stepNotelist {
		margin-top: 12px;
	}
	.oshikatsu-step .oshikatsu-stepNotelist > li {
		position: relative;
		padding-left: 14px;
		font-size: 1.4rem;
	}
	.oshikatsu-step .oshikatsu-stepNotelist > li + li {
		margin-top: 3px;
	}
	.oshikatsu-step .oshikatsu-stepNotelist > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton01 {
		position: relative;
		margin: 21px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-step .oshikatsu-stepButton01::before {
		content: '';
		position: absolute;
		top: 10px;
		left: 6px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton01 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 550px;
		min-height: 80px;
		padding: 5px 75px;
		border-radius: 50px;
		background-image: linear-gradient(90deg,#ff4ac1,#8727f3);
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-step .oshikatsu-stepButton01 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 20px;
		width: 40px;
		height: 40px;
		margin-top: -20px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-step .oshikatsu-stepButton01:hover a {
		transform: translate(6px,10px);
	}
	.oshikatsu-step .oshikatsu-stepButton02 {
		position: relative;
		margin: 30px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-step .oshikatsu-stepButton02::before {
		content: '';
		position: absolute;
		top: 10px;
		left: 6px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton02 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 555px;
		min-height: 80px;
		padding: 3px 60px;
		border: 3px solid #22b4b0;
		border-radius: 50px;
		background-color: #fff;
		text-align: center;
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-step .oshikatsu-stepButton02 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 17px;
		width: 40px;
		height: 40px;
		margin-top: -20px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic10.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-step .oshikatsu-stepButton02:hover a {
		transform: translate(6px,10px);
	}
	/* faq */
	.oshikatsu-faqWrap {
		margin-top: 34px;
		border-top: 1px solid #90d9d7;
	}
	.oshikatsu-faq {
		padding: 20px 0;
		border-bottom: 1px solid #90d9d7;
	}
	.oshikatsu-faq .oshikatsu-faqTitle {
		position: relative;
		min-height: 59px;
		padding: 15px 60px 0 75px;
		font-size: 2rem;
		line-height: 1.7;
		cursor: pointer;
	}
	.oshikatsu-faq .oshikatsu-faqTitle::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 59px;
		height: 59px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic12.webp") no-repeat 0 0 / contain;
		transition: 0.2s all ease-out;
	}
	.oshikatsu-faq .oshikatsu-faqTitle:hover::before {
		transform: scale(1.1);
	}
	.oshikatsu-faq .oshikatsu-faqTitle.open:hover::before {
		transform: scale(1);
	}
	.oshikatsu-faq .oshikatsu-faqTitle::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 20px;
		width: 27px;
		height: 16px;
		margin-top: -8px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic14.webp") no-repeat 0 0 / contain;
		transition: 0.3s all ease-out;
	}
	.oshikatsu-faq .oshikatsu-faqTitle.open::after {
		transform: rotate(-180deg);
	}
	.oshikatsu-faq .oshikatsu-faqBody {
		position: relative;
		margin-top: 20px;
		padding: 15px 0 0 75px;
	}
	.oshikatsu-faq .oshikatsu-faqBody::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 59px;
		height: 59px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic13.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-faq .oshikatsu-faqBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-faq .oshikatsu-faqText01 {
		margin-top: 10px;
		font-size: 2rem;
		line-height: 1.7;
	}
	.oshikatsu-faq .oshikatsu-faqNotetext {
		position: relative;
		margin-top: 17px;
		padding-left: 14px;
		font-size: 1.4rem;
	}
	.oshikatsu-faq .oshikatsu-faqNotetext > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-faq .oshikatsu-faqImage {
		margin-top: 10px;
	}
	/* floating */
	.oshikatsu-floatingWrap {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: rgba(255,255,255,0.8);
	}
	.oshikatsu-floating {
		width: 1230px;
		margin: 0 auto;
		padding: 20px 15px;
	}
	.oshikatsu-floating >:first-child {
		margin-top: 0 !important;
	}
	
	.oshikatsu-floating .oshikatsu-floatingButton {
		margin-top: 20px;
		text-align: center;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 750px;
		min-height: 90px;
		padding: 5px 80px;
		border-radius: 50px;
		background-image: linear-gradient(to right,#8727f3 0%,#ff4ac1 100%);
		background-position: 1% 100%;
		background-size: 100% auto;
		text-align: center;
		font-size: 4rem;
		color: #fff;
		font-weight: bold;
		text-decoration: none;
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a:hover {
		background-position: 1% 100%;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background: linear-gradient(to right, #ff4ac1 0%, #8727f3 100%);
		transition: 0.5s all ease;
		opacity: 1;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a:hover::before {
		opacity: 0;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 30px;
		width: 40px;
		height: 40px;
		margin-top: -20px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a .text {
		position: relative;
	}
	/* modal */
	.modalInlineWrapper {
		display: none;
	}
	#cboxContent {
		overflow: visible !important;
	}
	#colorbox #cboxLoadedContent {
		overflow: auto !important;
		overflow-x: hidden !important;
	}
	#cboxClose {
		display: block;
		position: absolute;
		top: -20px !important;
		bottom: auto !important;
		right: -20px !important;
		background: url(/common-files/img/com_close_ic04.png) no-repeat 0 0 !important;
		width: 48px !important;
		height: 48px !important;
		text-indent: -9999px;
	}
	#cboxClose:hover {
		background: url(/common-files/img/com_close_ic04.png) no-repeat 0 0;
	}
	#cboxContent {
		max-width: 1100px;
		border-radius: 20px;
	}
	.modalContents {
		width: 100%;
		padding: 40px 30px;
	}
	.modalContents * {
		color: #000;
	}
	.ModalInner .cb_close a:after {
		right: 10px;
		height: 14px;
		width: 14px;
		margin-top: -7px;
		background-image: url(/common-files/img/com_close_ic01.png);
	}
	.oshikatsu-modal-title {
		text-align: center;
		font-size: 3rem;
		font-weight: bold;
	}
	.oshikatsu-modal-text {
		margin-top: 20px;
		font-size: 2rem;
	}
	.oshikatsu-modal-text02 {
		margin-top: 12px;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.oshikatsu-modal-image {
		width: 170px;
		height: auto;
		margin: 20px auto 0;
		text-align: center;
	}
	.oshikatsu-modal-column {
		display: flex;
		gap: 32px;
		max-width: 850px;
		margin: 32px auto 0;
	}
	.oshikatsu-modal-column .oshikatsu-modal-columnItem {
		width: calc(50% - 32px / 2);
	}
	.oshikatsu-modal-column .oshikatsu-modal-columnItem >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-modal-media {
		display: flex;
		align-items: center;
		gap: 16px;
		margin-top: 32px;
		margin-bottom: 12px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaHead {
		flex-shrink: 0;
		width: 50px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaHead >:first-child
	.oshikatsu-modal-media .oshikatsu-modal-mediaBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaImage {
		margin-top: 10px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaText {
		margin-top: 10px;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.oshikatsu-modal-list01 {
		margin-top: 8px;
	}
	.oshikatsu-modal-list01 > li {
		position: relative;
		padding-left: 15px;
		font-size: 1.5rem;
	}
	.oshikatsu-modal-list01 > li + li {
		margin-top: 8px;
	}
	.oshikatsu-modal-list01 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-modal-list02 {
		margin-top: 8px;
	}
	.oshikatsu-modal-list02 > li {
		position: relative;
		padding-left: 10px;
		font-size: 1rem;
	}
	.oshikatsu-modal-list02 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
}
@media screen and (max-width: 750px) {
	/* util
	------------------------------------------------------ */
	[data-link="blank01"] {
		padding-right: 16px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 1px bottom 6px / 11px;
	}
	[data-link="blank02"] {
		padding-right: 16px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 1px bottom 50% / 11px;
	}
	[data-link="blank03"] {
		padding-right: 16px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat right 1px bottom 50% / 11px;
	}
	/* override
	------------------------------------------------------ */
	body {
		font-size: 1.3rem;
		background-color: #fff;
	}
	body .snsArea {
		margin: 20px auto 0;
	}
	/* header
	------------------------------------------------------ */
	#header {
		padding: 0;
		background-color: #fff;
		border: none;
	}
	#headerLogo {
		padding: 7px 10px 8px;
	}
	#header #headerLogo img {
		width: auto;
		height: 20px;
	}
	/* layout
	------------------------------------------------------ */
	#mainContainer {
		margin-top: 0;
	}
	#mainContents{
		padding: 26px 10px 35px;
	}
	/* footer
	------------------------------------------------------ */
	#footer {
		width: 100%;
		margin-top: 0;
		padding: 0;
		border: none;
		background-image: linear-gradient(to right,#29ccb1 0%,#14bdcc 100%);
		text-align: center;
	}
	#footer .footerInner {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 30px;
		text-align: center;
	}
	#copyright {
		font-size: 0.8rem;
		color: #fff;
	}
	/* mainVisual
	------------------------------------------------------ */
	.mainVisual {
		margin-left: calc(90 / 720 * 100vw);
	}
	.mainVisual .mainVisualInner {
		position: relative;
		padding: calc(52 / 720 * 100vw) calc(100 / 720 * 100vw) calc(102 / 720 * 100vw) calc(10 / 720 * 100vw);
		background-image: url("/gecard/mirrativoshikatu/img-files/index_bg01_sp.webp"),linear-gradient(90deg,#29ccb1,#14bdcc);
		background-repeat: no-repeat,no-repeat;
		background-position: 0 0,0 0;
		background-size: cover,100%;
		border-radius: calc(20 / 720 * 100vw) 0 0 calc(20 / 720 * 100vw);
	}
	.mainVisual .mainVisualInner >:first-child {
		margin-top: 0 !important;
	}
	.mainVisual .mainVisualMedia {
		margin-top: calc(20 / 720 * 100vw);
	}
	.mainVisual .mainVisualMedia >:first-child {
		margin-top: 0 !important;
	}
	.mainVisual .mainVisualMediaHead {
		margin-top: calc(50 / 720 * 100vw);
	}
	.mainVisual .mainVisualMediaBody {
		margin-top: calc(50 / 720 * 100vw);
	}
	.mainVisual .mainVisualMediaHead >:first-child,
	.mainVisual .mainVisualMediaBody >:first-child {
		margin-top: 0 !important;
	}
	.mainVisual .mainVisualCardWrap {
		display: flex;
		justify-content: center;
		flex-flow: wrap;
		gap: calc(9 / 720 * 100vw) calc(14 / 720 * 100vw);
		margin: calc(30 / 720 * 100vw) auto 0;
		padding-left: calc(10 / 720 * 100vw);
	}
	.mainVisual .mainVisualCard {
		width: calc(230 / 720 * 100vw);
	}
	.mainVisual .mainVisualTitle {
		margin-top: calc(10 / 720 * 100vw);
		text-align: center;
	}
	.mainVisual .mainVisualText01 {
		margin-top: calc(20 / 720 * 100vw);
		text-align: center;
	}
	.mainVisual .mainVisualScrolldown {
		position: absolute;
		left: calc(54 / 720 * 100vw * -1);
		top: 50%;
		width: calc(4 / 720 * 100vw);
		height: calc(142 / 720 * 100vw);
		margin-top: calc(168 / 720 * 100vw * -1);
	}
	.mainVisual .mainVisualScrolldown::before {
		content: "";
		position: absolute;
		bottom: 0;
		left: calc(6 / 720 * 100vw * -1);
		width: calc(14 / 720 * 100vw);
		height: calc(14 / 720 * 100vw);
		border-radius: 50%;
		background: #29ccb1;
		animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
	}
	.mainVisual .mainVisualScrolldown::after {
		content:"";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(#29ccb1,#14bdcc);
	}
	.mainVisual .mainVisualScrolldown > span {
		position: absolute;
		left: calc(14 / 720 * 100vw);
		bottom: 0;
		top: 0;
		margin: auto;
		width: calc(20 / 720 * 100vw);
		height: calc(62 / 720 * 100vw);
	}

	/* module
	------------------------------------------------------ */
	/* bg */
	.oshikatsu-bg01 {
		margin: 50px -10px;
		padding: 35px 10px 50px;
		background: linear-gradient(90deg,#29ccb1,#14bdcc) no-repeat 0 0 / 100%;
	}
	.oshikatsu-bg01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-bg01 + * {
		margin-top: 0 !important;
	}
	/* section */
	.oshikatsu-section01 {
		margin-top: 45px;
	}
	.oshikatsu-section01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section02 {
		margin-top: 35px;
	}
	.oshikatsu-section02 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section03 {
		margin-top: 45px;
	}
	.oshikatsu-section03 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-section04 {
		margin-top: 13px;
	}
	.oshikatsu-section04 + .oshikatsu-section04 {
		margin-top: 20px;
	}
	.oshikatsu-section04 >:first-child {
		margin-top: 0 !important;
	}
	/* heading */
	.oshikatsu-heading02 {
		margin: 30px -10px 0;
		text-align: center;
	}
	.oshikatsu-heading02-2 {
		margin-top: 20px;
		text-align: center;
	}
	.oshikatsu-heading03 {
		margin-top: 15px;
		margin-bottom: 10px;
	}
	.oshikatsu-heading03 .oshikatsu-heading03Title {
		font-size: 1.7rem;
		font-weight: bold;
		line-height: 1.3;
	}
	/* text */
	.oshikatsu-text01 {
		margin-top: 17px;
		text-align: center;
		font-size: 1.5rem;
		line-height: 1.2;
	}
	.oshikatsu-text02 {
		margin-top: 10px;
		font-size: 1.3rem;
		line-height: 1.37
	}
	.oshikatsu-text03 {
		margin-top: 10px;
		text-align: center;
		font-size: 1.4rem;
	}
	.oshikatsu-extext01 {
		margin-top: 18px;
		text-align: center;
		font-size: 2.1rem;
		font-weight: bold;
		line-height: 1.2;
	}
	.oshikatsu-extext01 .text {
		display: inline-block;
		position: relative;
		padding: 0 21px;
	}
	.oshikatsu-extext01 .text::before,
	.oshikatsu-extext01 .text::after {
		content: '';
		position: absolute;
		bottom: 3px;
		width: 3px;
		height: 30px;
		border-radius: 2px;
		background-color: #90ebe4;
	}
	.oshikatsu-extext01 .text::before {
		left: 7px;
		transform: rotate(-30deg);
	}
	.oshikatsu-extext01 .text::after {
		right: 7px;
		transform: rotate(30deg);
	}
	.oshikatsu-extext02 {
		margin-top: 8px;
		text-align: center;
		font-size: 1.7rem;
		color: #fff;
	}
	.oshikatsu-extext02 img {
		width: 22px;
		height: 22px;
		margin-left: 5px;
		vertical-align: middle;
	}
	/* list */
	.nest >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-list {
		margin-top: 14px;
	}
	.oshikatsu-list > li {
		position: relative;
		padding-left: 12px;
		font-size: 1.3rem;
		line-height: 1.2;
	}
	.oshikatsu-list > li + li {
		margin-top: 4px;
	}
	.oshikatsu-list > li::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 0;
		width: 5px;
		height: 5px;
		border-radius: 50%;
		background-color: #1fc5be;
	}
	.oshikatsu-list02 {
		margin-top: 10px;
	}
	.oshikatsu-list02 > li {
		position: relative;
		padding-left: 12px;
		font-size: 1.3rem;
		line-height: 1.2;
	}
	.oshikatsu-list02 > li + li {
		margin-top: 4px;
	}
	.oshikatsu-list02 > li::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 0;
		width: 5px;
		height: 5px;
		border-radius: 50%;
		background-color: #1fc5be;
	}
	.oshikatsu-notelist01 {
		margin-top: 18px;
		padding: 0 10px;
	}
	.oshikatsu-notelist01 > li {
		position: relative;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.3;
	}
	.oshikatsu-notelist01 > li + li {
		margin-top: 4px;
	}
	.oshikatsu-notelist01 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-notelist02 {
		margin-top: 10px;
	}
	.oshikatsu-notelist02 > li {
		position: relative;
		padding-left: 12px;
		font-size: 1.2rem;
	}
	.oshikatsu-notelist02 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-definitionlistWrap {
		margin-top: 18px;
		padding: 10px;
		background-color: #f0f8f8;
	}
	.oshikatsu-definitionlistWrap >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-definitionlist {
		display: flex;
		min-height: 42px;
		margin-top: 3px;
	}
	.oshikatsu-definitionlist dt {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 118px;
		padding: 5px 10px;
		background-color: #22b4b0;
		text-align: center;
		font-size: 1.3rem;
		color: #fff;
		font-weight: bold;
	}
	.oshikatsu-definitionlist dd {
		flex-grow: 1;
		display: flex;
		align-items: center;
		padding: 9px 10px;
		background-color: #fff;
		font-size: 1.5rem;
	}
	.oshikatsu-definitionlist dd .small {
		font-size: 1.2rem;
	}
	.oshikatsu-definitionlist dd .note {
		position: relative;
		margin-top: 4px;
		padding-left: 12px;
		font-size: 1.2rem;
	}
	.oshikatsu-definitionlist dd .note >.mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-orderlist {
		margin-top: 10px;
	}
	.oshikatsu-orderlist > li {
		position: relative;
		padding-left: 25px;
		font-size: 1.3rem;
		line-height: 1.25;
	}
	.oshikatsu-orderlist > li + li {
		margin-top: 3px;
	}
	.oshikatsu-orderlist > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
		color: #22b4b0;
	}
	/* box */
	.oshikatsu-box01 {
		margin-top: 15px;
		padding: 25px 10px;
		border-radius: 10px;
		background-color: #fff;
		box-shadow: 3px 3px 0 0 rgba(3,125,125,0.3);
	}
	.oshikatsu-box01 + .oshikatsu-box01 {
		margin-top: 24px;
	}
	.oshikatsu-box01 >:first-child {
		margin-top: 0!important;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle {
		margin-top: 20px;
		text-align: center;
		font-size: 2.1rem;
		font-weight: bold;
		line-height: 1.2;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle .text {
		background: linear-gradient(transparent 60%, #ffe114 60%, #ffe114 95%, transparent 95%);
	}
	.oshikatsu-box01 .oshikatsu-boxTitle02 {
		margin-top: 10px;
		text-align: center;
		font-size: 1.6rem;
		font-weight: bold;
	}
	.oshikatsu-box01 .oshikatsu-boxTitle02 .text {
		background: linear-gradient(transparent 60%, #d2f3f2 60%, #d2f3f2 90%, transparent 90%);
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight01 {
		margin-top: 20px;
		padding: 10px;
		border-radius: 10px;
		background-color: #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight01 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 {
		position: relative;
		margin-top: 20px;
		margin-bottom: 22px;
		padding: 15px;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::before,
	.oshikatsu-box01 .oshikatsu-boxHighlight02::after {
		content: '';
		position: absolute;
		width: 40px;
		height: 40px;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::before {
		left: 0;
		top: 0;
		border-top: 2px solid #d2f3f2;
		border-left: 2px solid #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02::after {
		right: 0;
		bottom: 0;
		border-right: 2px solid #d2f3f2;
		border-bottom: 2px solid #d2f3f2;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 .oshikatsu-boxHighlightInner {
		position: relative;
	}
	.oshikatsu-box01 .oshikatsu-boxHighlight02 .oshikatsu-boxHighlightInner >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box01 .oshikatsu-boxText01 {
		margin-top: 15px;
		text-align: center;
		font-size: 1.7rem;
		line-height: 1.4;
	}
	.oshikatsu-box01 .oshikatsu-boxText01 img {
		width: auto;
		height: 22px;
		margin-left: 2px;
		vertical-align: middle;
	}
	.oshikatsu-box01 .oshikatsu-boxText02 {
		margin-top: 10px;
		text-align: center;
		font-size: 1.3rem;
	}
	.oshikatsu-box01 .oshikatsu-boxText03 {
		margin-top: 5px;
		text-align: center;
		font-size: 1.2rem;
		line-height: 1.4;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 {
		margin-top: 10px;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 > li {
		position: relative;
		padding-top: 3px;
		padding-left: 30px;
		font-size: 1.5rem;
		line-height: 1.1;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 > li + li {
		margin-top: 10px;
	}
	.oshikatsu-box01 .oshikatsu-boxList01 > li::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 20px;
		height: 20px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic04.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-box02 {
		margin-top: 15px;
		margin-left: 25px;
		margin-right: 30px;
		padding: 15px 17px 14px;
		background-image: url("/gecard/mirrativoshikatu/img-files/index_bg03.webp"),url("/gecard/mirrativoshikatu/img-files/index_bg03.webp");
		background-repeat: repeat-x,repeat-x;
		background-position: 0 0,bottom left;
		background-size: 5px,5px;
	}
	.oshikatsu-box02 >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-box02 .oshikatsu-boxTitle {
		display: inline-block;
		margin-top: 15px;
		padding-right: 14px;
		padding-bottom: 7px;
		border-bottom: 2px solid #6fdad7;
		font-size: 1.5rem;
		line-height: 1.2;
	}
	.oshikatsu-box02 .oshikatsu-boxText01 {
		margin-top: 8px;
		font-size: 1.5rem;
		line-height: 1.2;
	}
	.oshikatsu-box02 .oshikatsu-button02 {
		margin-top: 25px;
	}
	/* button */
	.oshikatsu-button01 {
		position: relative;
		margin: 16px 10px 0;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-button01::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 3px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-button01 a {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-height: 45px;
		padding: 5px 40px;
		border-radius: 50px;
		background-image: linear-gradient(90deg,#ff4ac1,#8727f3);
		transition: 0.3s transform ease-out;
	}
	.oshikatsu-button01 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 15px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button01 a img {
		width: auto;
		max-height: 20px;
	}
	.oshikatsu-button02 {
		position: relative;
		margin: 10px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-button02::before {
		content: '';
		position: absolute;
		top: 3px;
		left: 2px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-button02 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 235px;
		min-height: 40px;
		padding: 3px 27px 3px 18px;
		border: 2px solid #22b4b0;
		border-radius: 50px;
		background-color: #fff;
		text-align: center;
		font-size: 1.4rem;
		color: #22b4b0;
		text-decoration: none;
	}
	.oshikatsu-button02 a[data-type="normal"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 12px;
		width: 6px;
		height: 11px;
		margin-top: -5.5px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic11.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button02 a[data-type="anchor"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		width: 10px;
		height: 6px;
		margin-top: -3px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic02.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button02 a[data-type="blank"]::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 9px;
		width: 10px;
		height: 8px;
		margin-top: -4px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic07.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-button03 {
		margin-top: 15px;
		margin-bottom: 10px;
	}
	.oshikatsu-button03 a {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-height: 40px;
		padding: 5px 25px;
		border: 2px solid #22b4b0;
		background-color: #fff;
		text-align: center;
		font-size: 1.4rem;
		color: inherit;
		font-weight: bold;
		text-decoration: none;
	}
	.oshikatsu-button03 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 15px;
		width: 5px;
		height: 8px;
		margin-top: -4px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic05.webp") no-repeat 0 0 / contain;
	}
	/* media */
	.oshikatsu-media01 {
		margin-top: 15px;
	}
	.oshikatsu-media01 .oshikatsu-mediaHead {
		text-align: center;
	}
	.oshikatsu-media01 .oshikatsu-mediaBody {
		margin-top: 20px;
		padding: 24px 15px 20px;
		border-radius: 10px;
		background-color: #fff;
		box-shadow: 3px 3px 0 0 rgba(3,125,125,0.4);
	}
	.oshikatsu-media01 .oshikatsu-mediaHead >:first-child,
	.oshikatsu-media01 .oshikatsu-mediaBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-media01 .oshikatsu-mediaImage01 {
		margin-top: 15px;
		text-align: center;
	}
	.oshikatsu-media01 .oshikatsu-mediaLead {
		margin-top: 15px;
		font-size: 2rem;
		line-height: 1.2;
	}
	.oshikatsu-media01 .oshikatsu-mediaLead .underline {
		background: linear-gradient(transparent 45%, #ffe114 45%, #ffe114 90%, transparent 90%);
	}
	.oshikatsu-media01 .oshikatsu-mediaLead .large {
		font-size: 2.5rem;
		font-weight: bold;
	}
	/* step */
	.oshikatsu-stepWrap {
		margin-top: 25px;
	}
	.oshikatsu-stepWrap >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-step {
		position: relative;
		margin-top: 65px;
	}
	.oshikatsu-step + .oshikatsu-step::before {
		content: '';
		position: absolute;
		top: calc((65px / 2 + 22px / 2) * -1);
		right: 0;
		left: 0;
		width: 31px;
		height: 22px;
		margin: auto;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic09.webp") no-repeat 0 0/ contain;
	}
	.oshikatsu-step .oshikatsu-stepHead >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-step .oshikatsu-stepTitle {
		display: flex;
		align-items: center;
		gap: 15px;
		min-height: 35px;
		margin-top: 10px;
	}
	.oshikatsu-step .oshikatsu-stepTitle .num {
		flex-shrink: 0;
		position: relative;
		padding-right: 17px;
	}
	.oshikatsu-step .oshikatsu-stepTitle .num::after {
		content: '';
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: 3px;
		height: 35px;
		margin: auto;
		border-radius: 2px;
		background-color: #bce8e7;
	}
	.oshikatsu-step .oshikatsu-stepTitle .text {
		font-size: 1.7rem;
		line-height: 1.1;
	}
	.oshikatsu-stepText01 {
		margin-top: 17px;
		margin-right: 22px;
		margin-left: 25px;
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.oshikatsu-step .oshikatsu-stepNotetext01 {
		position: relative;
		margin-left: 98px;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.3
	}
	.oshikatsu-step .oshikatsu-stepNotetext01 > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-step .oshikatsu-stepNotelist {
		margin-top: 1px;
		margin-right: 22px;
		margin-left: 25px;
	}
	.oshikatsu-step .oshikatsu-stepNotelist > li {
		position: relative;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.3;
	}
	.oshikatsu-step .oshikatsu-stepNotelist > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton01 {
		position: relative;
		margin: 12px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-step .oshikatsu-stepButton01::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 3px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton01 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 278px;
		min-height: 40px;
		padding: 5px 35px;
		border-radius: 50px;
		background-image: linear-gradient(90deg,#ff4ac1,#8727f3);
	}
	.oshikatsu-step .oshikatsu-stepButton01 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-step .oshikatsu-stepButton01 a img {
		width: auto;
		max-height: 15px;
	}
	.oshikatsu-step .oshikatsu-stepButton02 {
		position: relative;
		margin: 13px auto 0;
		width: fit-content;
		height: fit-content;
		text-align: center;
		border-radius: 50px;
	}
	.oshikatsu-step .oshikatsu-stepButton02::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 3px;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		background-color: #cbf8f4;
		z-index: 0;
	}
	.oshikatsu-step .oshikatsu-stepButton02 a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-width: 278px;
		min-height: 40px;
		padding: 3px 30px;
		border: 2px solid #22b4b0;
		border-radius: 50px;
		background-color: #fff;
		text-align: center;
	}
	.oshikatsu-step .oshikatsu-stepButton02 a::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 9px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic10.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-step .oshikatsu-stepButton02 a img {
		width: auto;
		max-height: 15px;
	}
	/* faq */
	.oshikatsu-faqWrap {
		margin-top: 15px;
		border-top: 1px solid #90d9d7;
	}
	.oshikatsu-faq {
		padding: 15px 0;
		border-bottom: 1px solid #90d9d7;
	}
	.oshikatsu-faq .oshikatsu-faqTitle {
		position: relative;
		padding: 5px 45px 0 40px;
		font-size: 1.5rem;
		line-height: 1.3;
		cursor: pointer;
	}
	.oshikatsu-faq .oshikatsu-faqTitle::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 30px;
		height: 30px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic12.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-faq .oshikatsu-faqTitle::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		width: 14px;
		height: 8px;
		margin-top: -4px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic14.webp") no-repeat 0 0 / contain;
		transition: 0.3s all ease-out;
	}
	.oshikatsu-faq .oshikatsu-faqTitle.open::after {
		transform: rotate(-180deg);
	}
	.oshikatsu-faq .oshikatsu-faqBody {
		position: relative;
		margin-top: 10px;
		padding: 5px 0 0 40px;
	}
	.oshikatsu-faq .oshikatsu-faqBody::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 30px;
		height: 30px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic13.webp") no-repeat 0 0 / contain;
	}
	.oshikatsu-faq .oshikatsu-faqBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-faq .oshikatsu-faqText01 {
		margin-top: 5px;
		font-size: 1.5rem;
		line-height: 1.3;
	}
	.oshikatsu-faq .oshikatsu-faqNotetext {
		position: relative;
		margin-top: 12px;
		padding-left: 12px;
		font-size: 1.2rem;
		line-height: 1.4;
	}
	.oshikatsu-faq .oshikatsu-faqNotetext > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-faq .oshikatsu-faqImage {
		margin-top: 10px;
	}
	/* floating */
	.oshikatsu-floatingWrap {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background-color: rgba(255,255,255,0.8);
	}
	.oshikatsu-floating {
		padding: 10px;
	}
	.oshikatsu-floating >:first-child {
		margin-top: 0 !important;
	}
	
	.oshikatsu-floating .oshikatsu-floatingButton {
		margin-top: 10px;
		padding: 0 10px;
		text-align: center;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		min-height: 45px;
		padding: 3px 37px;
		border-radius: 50px;
		background-image: linear-gradient(to right,#ff4ac1 0%,#8727f3 100%);
		background-position: 1% 100%;
		background-size: 100% auto;
		text-align: center;
		font-size: 1.8rem;
		color: #fff;
		font-weight: bold;
		text-decoration: none;
	}
	.oshikatsu-floating .oshikatsu-floatingButton a::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 15px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("/gecard/mirrativoshikatu/img-files/index_ic01.webp") no-repeat 0 0 / contain;
	}
	/* modal */
	.modalInlineWrapper {
		display: none;
	}
	#cboxContent {
		overflow: visible !important;
		border-radius: 10px;
	}
	#colorbox #cboxLoadedContent {
		overflow: auto !important;
		overflow-x: hidden !important;
	}
	#cboxClose {
		display: block;
		position: absolute;
		top: -15px !important;
		bottom: auto !important;
		right: -15px !important;
		background: url(/common-files/img/com_close_ic04.png) no-repeat 0 0/40px !important;
		background-size: 40px auto;
		width: 40px !important;
		height: 40px !important;
		text-indent: -9999px;
	}
	.modalContents * {
		color: #000;
	}
	.modalContents {
		padding: 25px 10px;
	}
	.oshikatsu-modal-title {
		text-align: center;
		font-size: 1.8rem;
		font-weight: bold;
	}
	.oshikatsu-modal-text {
		margin-top: 20px;
		font-size: 1.6rem;
	}
	.oshikatsu-modal-text02 {
		margin-top: 12px;
		font-size: 1.3rem;
		font-weight: bold;
	}
	.oshikatsu-modal-image {
		width: 170px;
		height: auto;
		margin: 20px auto 0;
		text-align: center;
	}
	.oshikatsu-modal-column {
		margin-top: 24px;
	}
	.oshikatsu-modal-column .oshikatsu-modal-columnItem >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-modal-column .oshikatsu-modal-columnItem + .oshikatsu-modal-columnItem {
		margin-top: 24px;
	}
	.oshikatsu-modal-media {
		display: flex;
		align-items: center;
		gap: 14px;
		margin-top: 24px;
		margin-bottom: 12px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaHead {
		flex-shrink: 0;
		width: 44px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaHead >:first-child
	.oshikatsu-modal-media .oshikatsu-modal-mediaBody >:first-child {
		margin-top: 0 !important;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaImage {
		margin-top: 10px;
	}
	.oshikatsu-modal-media .oshikatsu-modal-mediaText {
		margin-top: 10px;
		font-size: 1.3rem;
		font-weight: bold;
	}
	.oshikatsu-modal-list01 {
		margin-top: 12px;
	}
	.oshikatsu-modal-list01 > li {
		position: relative;
		padding-left: 13px;
		font-size: 1.3rem;
	}
	.oshikatsu-modal-list01 > li + li {
		margin-top: 5px;
	}
	.oshikatsu-modal-list01 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.oshikatsu-modal-list02 {
		margin-top: 12px;
	}
	.oshikatsu-modal-list02 > li {
		position: relative;
		padding-left: 10px;
		font-size: 1rem;
	}
	.oshikatsu-modal-list02 > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
}
/* keyframes
------------------------------------------------------ */
@keyframes circlemove {
	0% {
		bottom: 100%;
	}
	100% {
		bottom: calc(0% - 6px);
	}
}
@keyframes cirlemovehide {
	0% {
		opacity:0
	}
	50% {
		opacity:1;
	}
	80%{
		opacity:0.9;
	}
	100%{
		opacity:0;
	}
}