@charset "UTF-8";
html {
	font-size: 62.5%;
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	font-style: normal;
	color: #fff;
}

p {
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
a {
	text-decoration: none;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	color: #fff;
}

li {
	list-style: none;
}

.inner {
	max-width: 334px;
	margin: 0px auto;
}

* {
	margin: 0;
	padding: 0;
}

img {
	width: 100%;
	vertical-align: bottom;
}

.layout {
	display: block;
}
.wrapper {
	width: 100%;
	min-height: 100vh;
	position: relative;
	z-index: 1;
	overflow-y: auto;
	background-color: #525252;
}
.side {
	display: none;
}
@media screen and (min-width: 768px) {
	.layout {
		display: flex;
		position: relative;
		height: 100vh;
		overflow: hidden;
	}
	.side {
		display: block;
		position: fixed;
		top: 0;
		width: calc((100% - 375px) / 2);
		height: auto;
		min-height: 100vh;
		z-index: 0;
		background-color: #fff;
	}
	.side::-webkit-scrollbar {
		display: none;
	}
	.left {
		left: 0;
	}
	.right {
		right: 0;
	}
	.wrapper {
		width: 390px;
		margin: 0 auto;
		height: 100vh;
		overflow-y: scroll;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	.wrapper::-webkit-scrollbar {
		display: none;
	}
}

/* header */
header {
	background-color: #fff;
	width: 100%;
	z-index: 100;
}
@media screen and (min-width: 768px) {
	header {
		width: 390px;
	}
}
.header__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	padding: 1rem 4.5rem 1rem 1.7rem;
}
.header__logo {
	width: 10.2rem;
}
.header__inner p {
	color: #000;
	font-size: 1.4rem !important;
	font-weight: bold !important;
	letter-spacing: normal;
}

.section:nth-child(2) header,
.section:nth-child(3) header,
.section:nth-child(4) header,
.section:nth-child(5) header {
	display: none;
}

/* main */
.slide {
	height: calc(var(--vh, 1vh) * 100);
	overflow-y: auto;
	overflow-x: hidden;
	scroll-behavior: smooth;
	background-color: #007dca;
}
@media screen and (min-width: 768px) {
	.slide {
		height: auto;
		overflow-x: unset;
		overflow-y: unset;
		scroll-behavior: unset;
	}
}
.section:last-child .slide {
	background-color: #525252;
}
.section {
	text-align: center;
}
.section__area {
	padding-top: 2rem;
	background-color: #525252;
}
.slide01 .section__area {
	background-image: url(../image/section01-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	padding: 2rem 0 4rem;
}
.section__title {
	color: #007dca;
	background-color: #fff;
	border: 3px solid #007dca;
	border-radius: 1.5em;
	padding: 0.2rem 0 0.3rem;
}
.section__title p {
	font-size: 1.8rem;
	line-height: 1.3;
}
.section01__content {
	padding: 3rem 0 2rem;
}
.section01__content span {
	font-size: 2.2rem;
}
.section01__box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	padding: 1.5rem 0;
}
.section01__box div {
	background-color: #fff;
	border-radius: 2em;
	width: 16.2rem;
	padding: 0.8rem 0 1rem;
}
.section01__box p {
	font-size: 1.4rem;
	font-weight: 800;
	line-height: 1.4;
	color: #007dca;
	letter-spacing: normal;
}
.section01__flex {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
}
.section01__flex img {
	width: 16.2rem;
}
.section01__flex p {
	font-size: 1.6rem;
}
.section__area--text {
	font-weight: 500;
	line-height: 1.6;
}
.section__cta {
	background-color: #007dca;
	position: relative;
}
.section__cta::before {
	background-image: url(../image/slide-left.png);
	background-size: cover;
	background-repeat: no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: -3rem;
	left: 1rem;
	width: 2.4rem;
	height: 10rem;
	z-index: 1;
}
.section__cta::after {
	background-image: url(../image/slide-right.png);
	background-size: cover;
	background-repeat: no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: -3rem;
	right: 1rem;
	width: 2.4rem;
	height: 10.1rem;
	z-index: 1;
}
.section__cta > .inner > p:first-child {
	font-size: 1.4rem;
	line-height: 1.6;
	padding: 2rem 0 0.8rem;
}
.section__cta > .inner > p:nth-child(2) {
	line-height: 1;
}
.section__cta > .inner > p:nth-child(3) {
	font-size: 1.5rem;
    margin-bottom: 2rem;
    line-height: 1.5;
}
.section__cta span {
	font-size: 1.8rem;
	font-weight: 800;
	border-bottom: 4px solid #ff8418;
}
.section__cta--fukidashi {
	background-color: #fff;
	width: fit-content;
	padding: 0.3rem 1.6rem 0.4rem 1.7rem;
	margin: 0.8rem auto 1.6rem;
	border-radius: 2em;
	position: relative;
}
.section__cta--fukidashi::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	bottom: -9px;
	left: 50%;
	transform: translateX(-50%);
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 10px solid #fff;
	z-index: 1;
}
.section__cta--fukidashi p {
	font-weight: 800;
	color: #007dca;
	letter-spacing: 0.08em;
}
.section__cta--btn {
	background-color: #ff8418;
	border: 2px solid #fff;
	border-radius: 3em;
	width: 102%;
	transform: translateX(-1%);
	position: relative;
	display: inline-block;
}
.section__cta--btn::before {
	background-image: url(../image/line.svg);
	background-size: cover;
	background-repeat: no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 2.4rem;
	transform: translateY(-50%);
	width: 2.6rem;
	height: 2.5rem;
	z-index: 1;
}
.section__cta--btn::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 2.5rem;
	transform: translateY(-50%) rotate(45deg);
	width: 1.2rem;
	height: 1.2rem;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}
.section__cta--btn p {
	padding: 1.3rem 0 1.4rem;
	letter-spacing: 0.1em;
	transform: translateX(2.5%);
}
.section__cta--bar {
	width: 100%;
	padding: 2.2rem 0 2.8rem;
}
.slide02 .section__area--text,
.slide03 .section__area--text {
	width: 29.2rem;
	padding-top: 2rem;
	margin: 0 auto;
	font-size: 2rem;
	text-align: left;
}
.section__area--video {
	display: flex;
	justify-content: space-between;
	padding: 2rem 0 5.4rem;
}
.section__area--video--item {
	width: 100%;
	height: 33rem;
}
video {
	width: 100%;
	height: 100%;
	/*object-fit: cover;*/
}
.slide04 .section__area {
	background-image: url(../image/section04-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	padding: 2rem 0 4rem;
}
.slide04 .section__area--text {
	font-size: 1.5rem;
	line-height: 1.6;
	text-align: left;
	padding-bottom: 2rem;
}
.slide04 .section__area--text:nth-of-type(2) {
	padding-bottom: 5rem;
}
.section04__content {
	background-color: #007dca;
	border-radius: 1em;
	margin: 1.5rem 0 1rem;
}
.section04__content p {
	font-size: 2rem;
	line-height: 1.1;
	padding: 1rem 0 1.2rem;
}
.section04__content span {
	font-size: 1.6rem;
}
.slide05 .section__area {
	background-image: url(../image/section05-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
}
.slide05 .section__cta::before,
.slide05 .section__cta::after {
	display: none;
}
.slide05 .section__area--text {
	font-size: 1.8rem;
	margin: 1.5rem 0 2.5rem;
}
.section__cost {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ff8418;
	padding: 5.5rem 0 1.5rem;
	border-radius: 2em;
	width: 104%;
	transform: translateX(-2%);
	margin-bottom: 2rem;
}
.section__cost p {
	font-size: 2.4rem;
	font-weight: 800;
	letter-spacing: 0.1em;
}
.section__cost > p {
	transform: translateX(1.5rem);
}
.section__cost p:nth-child(2) {
	font-family: "Roboto", sans-serif;
	font-weight: 800;
	font-size: 6rem;
	line-height: 1;
	padding: 0 0.2rem 0 1rem;
	transform: translate(1.5rem, -0.2rem);
}
.section__cost span {
	font-size: 2rem;
}
.section__cost--sub {
	background-color: #fff;
	border-radius: 3em;
	width: 32.5rem;
	margin: 0 auto;
	position: absolute;
	top: 1rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}
.section__cost--sub p {
	color: #ff8418;
	font-size: 1.75rem;
}
.section__cta05 {
	background-color: #ff8418;
	border: 3px solid #fff;
	border-radius: 3em;
	width: 104%;
	transform: translate(-2%, 2rem);
	position: relative;
	z-index: 1;
	padding: 0.7rem 0 0.9rem;
}
.section__cta05 p {
	letter-spacing: normal;
}
.slide05 .section__cta > .inner > p:first-child {
	padding: 3.2rem 0 1.8rem;
}

/* footer */
footer {
	text-align: center;
	background-color: #525252;
}
.footer__link {
	display: flex;
	justify-content: center;
	gap: 20px;
	padding-top: 1.6rem;
}
.footer__link a {
	font-size: 1.2rem;
}
footer p {
	font-size: 0.9rem;
	font-weight: 400;
	padding: 0.8rem 0;
}

.fp-watermark {
	display: none;
}

/* company , terms */
.company h1,
.terms h1 {
	font-size: 1.6rem;
	margin-bottom: 4rem;
}
.company h2,
.terms h2 {
	font-size: 1.2rem;
	line-height: 1.8;
	margin-top: 2.5rem;
}
.company p,
.terms p {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.8;
}
.company .inner,
.terms .inner {
	max-width: 310px;
	margin: 0px auto;
}
.company header,
.terms header {
	position: unset;
}
.company main,
.terms main {
	background-color: #b8e4ff;
	color: #000;
	padding: 4rem 0 8rem;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 768px) {
	p {
		font-size: calc(16 / 390 * 100vw);
		letter-spacing: calc(0.05em);
	}
	a {
		font-size: calc(16 / 390 * 100vw);
		letter-spacing: calc(0.05em);
	}
	.inner {
		max-width: calc(334 / 390 * 100vw);
		margin: 0 auto;
	}
	.wrapper {
		width: 100%;
		min-height: 100vh;
	}
	.side {
		display: none;
	}
	.header__inner {
		gap: calc(15 / 390 * 100vw);
		padding: calc(10 / 390 * 100vw) calc(45 / 390 * 100vw)
			calc(10 / 390 * 100vw) calc(17 / 390 * 100vw);
	}
	.header__logo {
		width: calc(102 / 390 * 100vw);
	}
	.header__inner p {
		font-size: calc(14 / 390 * 100vw) !important;
	}
	.section__area {
		padding-top: calc(20 / 390 * 100vw);
	}
	.slide01 .section__area {
		padding: calc(20 / 390 * 100vw) 0 calc(40 / 390 * 100vw);
	}
	.section__title {
		border-radius: calc(15 / 390 * 100vw);
		padding: calc(2 / 390 * 100vw) 0 calc(3 / 390 * 100vw);
	}
	.section__title p {
		font-size: calc(18 / 390 * 100vw);
	}
	.section01__content {
		padding: calc(30 / 390 * 100vw) 0 calc(20 / 390 * 100vw);
	}
	.section01__content span {
		font-size: calc(22 / 390 * 100vw);
	}
	.section01__box {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: calc(10 / 390 * 100vw);
		padding: calc(15 / 390 * 100vw) 0;
	}
	.section01__box div {
		background-color: #fff;
		border-radius: 2em;
		width: calc(162 / 390 * 100vw);
		padding: calc(8 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
	}
	.section01__box p {
		font-size: calc(14 / 390 * 100vw);
		font-weight: 800;
		line-height: 1.4;
		color: #007dca;
		letter-spacing: normal;
	}
	.section01__flex {
		gap: calc(5 / 390 * 100vw);
	}
	.section01__flex img {
		width: calc(162 / 390 * 100vw);
	}
	.section01__flex p {
		font-size: calc(16 / 390 * 100vw);
	}
	.section__cta::before,
	.section__cta::after {
		top: calc(-30 / 390 * 100vw);
		width: calc(24 / 390 * 100vw);
		height: calc(100 / 370 * 100vw);
		background-position: bottom;
	}
	.section__cta > .inner > p:first-child {
		font-size: calc(14 / 390 * 100vw);
		padding: calc(20 / 390 * 100vw) 0 calc(18 / 390 * 100vw);
	}
	.section__cta > .inner > p:nth-child(2) {
		font-size: calc(16 / 390 * 100vw);
	}
	.section__cta > .inner > p:nth-child(3) {
		font-size: calc(18 / 390 * 100vw);
	}
	.section__cta span {
		font-size: calc(26 / 390 * 100vw);
		border-bottom: calc(4 / 390 * 100vw) solid #ff8418;
	}
	.section__cta--fukidashi {
		padding: calc(3 / 390 * 100vw) calc(16 / 390 * 100vw) calc(4 / 390 * 100vw)
			calc(17 / 390 * 100vw);
		margin: calc(8 / 390 * 100vw) auto calc(16 / 390 * 100vw);
		border-radius: calc(20 / 390 * 100vw);
	}
	.section__cta--fukidashi::before {
		bottom: calc(-7 / 390 * 100vw);
		border-left: calc(6 / 390 * 100vw) solid transparent;
		border-right: calc(6 / 390 * 100vw) solid transparent;
		border-top: calc(8 / 390 * 100vw) solid #fff;
	}
	.section__cta--btn {
		border-radius: calc(30 / 390 * 100vw);
	}
	.section__cta--btn::before {
		left: calc(24 / 390 * 100vw);
		width: calc(26 / 390 * 100vw);
		height: calc(25 / 390 * 100vw);
	}
	.section__cta--btn::after {
		right: calc(25 / 390 * 100vw);
		width: calc(12 / 390 * 100vw);
		height: calc(12 / 390 * 100vw);
		border-top: calc(3 / 390 * 100vw) solid #fff;
		border-right: calc(3 / 390 * 100vw) solid #fff;
	}
	.section__cta--btn p {
		padding: calc(13 / 390 * 100vw) 0 calc(14 / 390 * 100vw);
	}
	.section__cta--bar {
		padding: calc(22 / 390 * 100vw) 0 calc(28 / 390 * 100vw);
	}
	.slide02 .section__area--text,
	.slide03 .section__area--text {
		width: calc(292 / 390 * 100vw);
		padding-top: calc(20 / 390 * 100vw);
		font-size: calc(20 / 390 * 100vw);
	}
	.section__area--video {
		padding: calc(20 / 390 * 100vw) 0 calc(54 / 390 * 100vw);
	}
	.section__area--video--item {
		width: 100%;
		height: calc(330 / 390 * 100vw);
	}
	.slide04 .section__area {
		padding: calc(20 / 390 * 100vw) 0 calc(40 / 390 * 100vw);
	}
	.slide04 .section__area--text {
		font-size: calc(15 / 390 * 100vw);
		padding-bottom: calc(20 / 390 * 100vw);
	}
	.slide04 .section__area--text:nth-of-type(2) {
		padding-bottom: calc(50 / 390 * 100vw);
	}
	.section04__content {
		border-radius: calc(10 / 390 * 100vw);
		margin: calc(15 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
	}
	.section04__content p {
		font-size: calc(24 / 390 * 100vw);
		padding: calc(10 / 390 * 100vw) 0 calc(12 / 390 * 100vw);
	}
	.section04__content span {
		font-size: calc(16 / 390 * 100vw);
	}
	.slide05 .section__area--text {
		font-size: calc(18 / 390 * 100vw);
		margin: calc(15 / 390 * 100vw) 0 calc(25 / 390 * 100vw);
	}
	.section__cost {
		padding: calc(55 / 390 * 100vw) 0 calc(15 / 390 * 100vw);
		border-radius: calc(20 / 390 * 100vw);
		margin-bottom: calc(20 / 390 * 100vw);
	}
	.section__cost p {
		font-size: calc(24 / 390 * 100vw);
	}
	.section__cost > p {
		transform: translateX(calc(15 / 390 * 100vw));
	}
	.section__cost p:nth-child(2) {
		font-size: calc(60 / 390 * 100vw);
		padding: 0 calc(2 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
		transform: translate(calc(15 / 390 * 100vw), calc(-2 / 390 * 100vw));
	}
	.section__cost span {
		font-size: calc(20 / 390 * 100vw);
	}
	.section__cost--sub {
		border-radius: calc(30 / 390 * 100vw);
		width: calc(325 / 390 * 100vw);
		top: calc(10 / 390 * 100vw);
	}
	.section__cost--sub p {
		font-size: calc(17.5 / 390 * 100vw);
	}
	.section__cta05 {
		border-radius: calc(30 / 390 * 100vw);
		padding: calc(7 / 390 * 100vw) 0 calc(9 / 390 * 100vw);
	}
	.slide05 .section__cta > .inner > p:first-child {
		padding: calc(32 / 390 * 100vw) 0 calc(18 / 390 * 100vw);
	}
	.footer__link {
		gap: calc(20 / 390 * 100vw);
		padding-top: calc(16 / 390 * 100vw);
	}
	.footer__link a {
		font-size: calc(12 / 390 * 100vw);
	}
	footer p {
		font-size: calc(9 / 390 * 100vw);
		padding: calc(8 / 390 * 100vw) 0;
	}
	.company h1,
	.terms h1 {
		font-size: calc(16 / 390 * 100vw);
		margin-bottom: calc(40 / 390 * 100vw);
	}
	.company h2,
	.terms h2 {
		font-size: calc(12 / 390 * 100vw);
		margin-top: calc(25 / 390 * 100vw);
	}
	.company p,
	.terms p {
		font-size: calc(12 / 390 * 100vw);
	}
	.company main,
	.terms main {
		padding: calc(40 / 390 * 100vw) 0 calc(80 / 390 * 100vw);
	}
}

@media screen and (max-width: 768px) {
	.section__cta > .inner > p:first-child {
		font-size: calc(13 / 390 * 100vw);
		padding: calc(10 / 390 * 100vw) 0 calc(5 / 390 * 100vw);
	}
	.section__cta > .inner > p:nth-child(2) {
		font-size: calc(14 / 390 * 100vw);
	}
	.section__cta span {
		font-size: calc(18 / 390 * 100vw);
		border-bottom: calc(3 / 390 * 100vw) solid #ff8418;
	}
	.section__cta > .inner > p:nth-child(3) {
		font-size: calc(15 / 390 * 100vw);
		margin-bottom: calc(20 / 390 * 100vw);
		line-height: 1.5;
	}
	.section__cta--fukidashi {
		padding: calc(0 / 390 * 100vw) calc(16 / 390 * 100vw) calc(1 / 390 * 100vw)
			calc(17 / 390 * 100vw);
		margin: calc(4 / 390 * 100vw) auto calc(12 / 390 * 100vw);
		border-radius: calc(20 / 390 * 100vw);
	}
	.section__cta--fukidashi p {
		font-size: calc(14 / 390 * 100vw);
	}
	.section__cta--btn p {
		font-size: calc(15 / 390 * 100vw);
		padding: calc(7 / 390 * 100vw) 0 calc(8 / 390 * 100vw);
	}
	.section__cta--bar {
		padding: calc(14 / 390 * 100vw) 0 calc(16 / 390 * 100vw);
	}

	p {
		font-size: calc(15 / 390 * 100vw);
		line-height: 1.7;
	}
	.section01__content span {
		font-size: calc(20 / 390 * 100vw);
	}

	.slide01 .section__area {
		padding: calc(15 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
	}
	.section01__content {
		padding: calc(20 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
	}
	.section__area {
		padding-top: calc(15 / 390 * 100vw);
	}
	.slide02 .section__area--text,
	.slide03 .section__area--text {
		width: calc(292 / 390 * 100vw);
		padding-top: calc(10 / 390 * 100vw);
		font-size: calc(16 / 390 * 100vw);
		line-height: 1.5;
	}
	.section__title p {
		font-size: calc(16 / 390 * 100vw);
	}

	.section04__content p {
		font-size: calc(20 / 390 * 100vw);
		padding: calc(8 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
	}
	.section__area--video {
		padding: calc(15 / 390 * 100vw) 0 calc(30 / 390 * 100vw);
	}
	.section__area--video--item {
		width: 100%;
		height: calc(300 / 390 * 100vw);
	}
	.slide04 .section__area {
		padding: calc(15 / 390 * 100vw) 0 calc(30 / 390 * 100vw);
	}
	.slide04 .section__area--text:nth-of-type(2) {
		padding-bottom: calc(30 / 390 * 100vw);
	}
	.section__cost {
		padding: calc(55 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
		border-radius: calc(20 / 390 * 100vw);
		margin-bottom: calc(20 / 390 * 100vw);
	}
	.section__cost p {
		font-size: calc(20 / 390 * 100vw);
	}
	.section__cost p:nth-child(2) {
		font-size: calc(55 / 390 * 100vw);
		padding: 0 calc(2 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
		transform: translate(calc(15 / 390 * 100vw), calc(-2 / 390 * 100vw));
	}
	.section__cost--sub p {
		font-size: calc(16 / 390 * 100vw);
	}
	.slide05 .section__area--text {
		font-size: calc(16 / 390 * 100vw);
		margin: calc(10 / 390 * 100vw) 0 calc(15 / 390 * 100vw);
	}
}
