@charset "utf-8";

html {
	font-size: 10px;
}

/*@media screen and (min-width:1000px){*/
/*	html {*/
/*		font-size: 1vw;*/
/*	}*/
/*}*/

@media screen and (max-width:960px){
	html {
		font-size: 1.04166667vw;
	}
}

@media screen and (max-width:767px){
	html {
		font-size: 2.66666667vw;
		/*font-size: 10px;*/
	}
}

/**********************************

 fonts

***********************************/
@font-face {
	font-family: 'Rational Text Book';
	src: url('../fonts/RationalText-Book.eot');
	src: local('Rational Text Book'), local('RationalText-Book'),
	url('../fonts/RationalText-Book.eot?#iefix') format('embedded-opentype'),
	url('../fonts/RationalText-Book.woff2') format('woff2'),
	url('../fonts/RationalText-Book.woff') format('woff'),
	url('../fonts/RationalText-Book.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Rational Text';
	src: url('../fonts/RationalText-Medium.eot');
	src: local('Rational Text Medium'), local('RationalText-Medium'),
	url('../fonts/RationalText-Medium.eot?#iefix') format('embedded-opentype'),
	url('../fonts/RationalText-Medium.woff2') format('woff2'),
	url('../fonts/RationalText-Medium.woff') format('woff'),
	url('../fonts/RationalText-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Rational Text';
	src: url('../fonts/RationalText-SemiBold.eot');
	src: local('Rational Text SemiBold'), local('RationalText-SemiBold'),
	url('../fonts/RationalText-SemiBold.eot?#iefix') format('embedded-opentype'),
	url('../fonts/RationalText-SemiBold.woff2') format('woff2'),
	url('../fonts/RationalText-SemiBold.woff') format('woff'),
	url('../fonts/RationalText-SemiBold.ttf') format('truetype');
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: 'Rational Text';
	src: url('../fonts/RationalText-Bold.eot');
	src: local('Rational Text Bold'), local('RationalText-Bold'),
	url('../fonts/RationalText-Bold.eot?#iefix') format('embedded-opentype'),
	url('../fonts/RationalText-Bold.woff2') format('woff2'),
	url('../fonts/RationalText-Bold.woff') format('woff'),
	url('../fonts/RationalText-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
}

.rational-text-book {
	font-family: 'Rational Text Book';
}

.rational-text {
	font-family: 'Rational Text';
}

.Inter {
	font-family: "Inter", sans-serif;
}


/**********************************

 wrapper

***********************************/
#wrapper {
}

@media screen and (min-width:768px){
	#wrapper {
		min-width: auto;
	}
}

@media screen and (max-width:767px){
	#wrapper {
		padding-top: 0;
	}
}

/**********************************

 pagetop

***********************************/
#pagetop {
	display: none !important;
}

@media screen and (min-width:768px){
}

/**********************************

 l-header

***********************************/
.l-header {

}

.l-header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 80px;
}

.l-header__inner-logo {
	width: 182px;
	margin: 0;
}

.l-header__inner-logo a {
	display: block;
}

.l-header__inner-logo a img {
	display: block;
	width: 100%;
}

.l-header__inner-right {
	display: flex;
	align-items: center;
}

.l-header__inner-right-lang {
	display: flex;
	align-items: center;
	margin: 0 20px 0 0;
	list-style: none;
	font-size: 16px;
	font-weight: 600;
}

.l-header__inner-right-lang li {
	margin-right: .1em;
}

.l-header__inner-right-lang li:last-child {
	margin-right: 0;
}

.l-header__inner-right-lang li:after {
	content: "/";
	display: inline-block;
	margin-left: .2em;
}

.l-header__inner-right-lang li:last-child:after {
	display: none;
}

.l-header__inner-right-lang li a {
	color: #010F3B;
	text-decoration: underline;
}

.l-header__inner-right-lang li a:hover {
	text-decoration: none;
}

.l-header__inner-right-btn {
	font-size: 16px;
	font-weight: 600;
}

.l-header__inner-right-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 148px;
	height: 44px;
	color: #000E3E;
	background-color: #FEC847;
	text-align: center;
	border-radius: 6px;
	position: relative;
	z-index: 1;
}

@media screen and (min-width:768px){

	.l-header__inner-right-btn a:before {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-radius: 100%;
		background-color: rgba(255,255,255,.15);
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: -1;
		transform: translateY(-50%) translateX(-50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
		transition: all 1000ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-header__inner-right-btn a:hover:before {
		width: 40px;
		height: 40px;
		opacity: 1;
	}
}

@media screen and (max-width:767px){

	.l-header__inner {
		height: 75px;
		/*height: 85px;*/
	}

	.l-header__inner-logo {
		width: 103px;
		margin-right: 13px;
	}

	.l-header__inner-right {
		display: block;
	}

	.l-header__inner-right-lang {
		justify-content: flex-end;
		padding: 0;
		margin: 0 0 3px 0;
		font-size: 13px;
	}

	.l-header__inner-right-lang li {
		margin-right: .1em;
	}

	.l-header__inner-right-lang li:last-child {
		margin-right: 0;
	}

	.l-header__inner-right-lang li:after {
		content: "/";
		display: inline-block;
		margin-left: .2em;
	}

	.l-header__inner-right-lang li:last-child:after {
		display: none;
	}

	.l-header__inner-right-lang li a {
		color: #010F3B;
		text-decoration: underline;
	}

	.l-header__inner-right-lang li a:hover {
		text-decoration: none;
	}

	.l-header__inner-right-btn {
		font-size: 16px;
	}

	.l-header__inner-right-btn a {
		width: 149px;
		height: 44px;
		border-radius: 3px;
	}
}

/**********************************

 hd-fixed

***********************************/

@media screen and (min-width:768px){
	.hd-fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		/*height: 57px;*/
		background-color: #ffffff;
		z-index: 999;
	}
}

@media screen and (max-width:767px){
	.hd-fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		/*height: 57px;*/
		background-color: #ffffff;
		z-index: 999;
	}

}

/**********************************

 footer

***********************************/
.footer {

}

.footer_bottom {

}

.footer_bottom .container {
	width: 1190px;
	max-width: 100%;
}

.footer_bottom_link li a {
	color: #2C2C2C;
}

@media screen and (max-width:767px){
	.footer_contact {
		display: none !important;
	}

	.footer_bottom {
		padding-top: 0;
	}

	.footer_bottom_link_wrap {
		background: #fff;
	}
}

/**********************************

 l-main

***********************************/
.l-main {
	font-family: 'Rational Text', "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	color: #000f3c;
	font-size: 18px;
	line-height: 1.444444444444444;
	background: #f2f3f5;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.l-main img {
	max-width: 100%;
}

@media screen and (min-width:768px){
	.l-main {
		/*padding-top: 80px;*/
	}

	.l-main .sp-only {
		display: none !important;
	}
}

@media screen and (max-width:767px){
	.l-main {
		/*padding-bottom: 10px;*/
		/*margin-bottom: -10px;*/
		font-size: 15px;
		line-height: 1.733333333333333;
	}

	.l-main .pc-only {
		display: none !important;
	}

}

/**********************************

 define

***********************************/
.define-wrap {
	padding: 0 5rem;
}

.define-inner {
	width: 86rem;
	max-width: 100%;
	margin: 0 auto;
}

@media screen and (max-width:767px){

	.define-wrap {
		padding: 0 3rem;
	}
}


/**********************************

 ov

***********************************/
.ov {
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.ov:hover {
	opacity: .7;
}

/**********************************

 c-btn01

***********************************/
a.c-btn01 {
	display: inline-block;
	min-width: 17.4rem;
	padding: 1.6rem 1.5rem;
	/*padding: 1.3rem 2.5rem;*/
	color: #000f3c;
	font-size: 2.083rem;
	font-weight: 600;
	text-decoration: none;
	background: #ffc945;
	border-radius: .8rem;
}

a.c-btn01 .arr {
	padding-right: 3.8rem;
	position: relative;
	z-index: 1;
}

a.c-btn01 .arr:before {
	content: "";
	display: block;
	width: 2.8rem;
	height: 2.8rem;
	background: url(../img/lp/icon_arr01.png) no-repeat center center / contain;
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

a.c-btn01 .icon {
	padding-right: 2.4rem;
	position: relative;
	z-index: 1;
}

a.c-btn01 .icon:before {
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../img/lp/icon_blank01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media screen and (max-width:767px){

	a.c-btn01 {
		display: inline-block;
		min-width: auto;
		padding: 1.05rem 1.5rem;
		/*padding: .8rem 3rem;*/
		font-size: 1.528rem;
		line-height: 1.2;
		border-radius: .5rem;
	}

	a.c-btn01 .arr {
		display: inline-block;
		padding-right: 3rem;
	}

	a.c-btn01 .arr:before {
		width: 2rem;
		height: 2rem;
	}

	a.c-btn01 .icon {
		padding-right: 2.2rem;
	}

	a.c-btn01 .icon:before {
		width: 1.4rem;
		height: 1.4rem;
	}
}

/**********************************

 c-bg01

***********************************/
.c-bg01 {
	background: #000f3c;
}

/**********************************

 c-hero

***********************************/
.c-hero {
	background: #ffffff;
	position: relative;
	z-index: 1;
}

.c-hero__inner {
	display: flex;
	justify-content: left;
	width: 86vw;
	height: 57.7vw;
	position: relative;
	z-index: 2;
}

.c-hero__inner:before {
	content: "";
	display: block;
	width: calc(100% + 100vw);
	height: 39.7vw;
	margin-right: 38vw;
	margin-bottom: -5rem;
	background: url(../img/lp/hero_dots01.png) repeat right top;
	background-size: 1.8rem 1.8rem;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: -1;
}

.c-hero__inner-content {
	padding-top: 4vw;
}

.c-hero__inner-content img {
	width: 100%;
	max-width: none;
}

.c-hero__inner-content-head {
	display: flex;
	align-items: flex-end;
}

.c-hero__inner-content-head-logo {
	width: 16.4vw;
	margin: 0 3.5vw 0 0;
}

.c-hero__inner-content-head-trosifol {
	width: 15.7vw;
	margin: 0 0 .7vw 0;
}

.c-hero__inner-content-head-trosifol img {
	display: block;
}

.c-hero__inner-content-txt01 {
	margin: 6vw 0 0 -.2vw;
	font-size: 3.6vw;
	font-weight: 600;
	line-height: 1.0963722;
}

.c-hero__inner-content-txt02 {
	margin: 3.5vw 0 0 -.2vw;
	font-size: 1.8vw;
	line-height: 1.2;
}

.c-hero__inner-content-pic01 {
	width: 57.4vw;
	margin-bottom: -2vw;
	position: absolute;
	bottom: 0;
	right: -7vw;
	z-index: 2;
}

.c-hero__inner-content-pic01 img {
	width: 100%;
	max-width: none;
}

@media screen and (max-width:767px){
	.c-hero {
		border-radius: 0;
		position: relative;
		z-index: 1;
	}

	.c-hero__inner {
		display: block;
		width: auto;
		height: auto;
		padding: 0 0 .1rem 0;
	}

	.c-hero__inner:before {
		height: 44.5rem;
		margin-right: 16rem;
		margin-bottom: -4.5rem;
		background-size: 1.2rem 1.2rem;
	}

	.c-hero__inner-content {
		padding-top: 3rem;
	}

	.c-hero__inner-content-head {
		display: flex;
		justify-content: left;
		align-items: flex-end;
	}

	.c-hero__inner-content-head-logo {
		width: 10.4rem;
		margin: 0 6rem 0 0;
	}

	.c-hero__inner-content-head-trosifol {
		width: 10.7rem;
		margin: 0 0 .4rem 0;
	}

	.c-hero__inner-content-txt01 {
		margin-top: 3rem;
		font-size: 2.778rem;
		line-height: 1.2;
	}

	.c-hero__inner-content-txt02 {
		padding-right: 2em;
		margin: 1.5rem 0 0 0;
		font-size: 1.389rem;
		line-height: 1.2;
	}

	.c-hero__inner-content-pic01 {
		width: auto;
		margin-top: 1.5rem;
		margin-left: -3rem;
		margin-right: -3rem;
		margin-bottom: -1rem;
		position: static;
	}

}



/**********************************

 c-discover

***********************************/
.c-discover {
	background: #000f3c;
}

.c-discover__inner {
	padding: 4.5rem 0 4.8rem;
	position: relative;
	z-index: 1;
}

.c-discover__inner:before {
	content: "";
	display: block;
	width: calc(100% + 100vw);
	height: 19vw;
	margin-left: 47vw;
	background: url(../img/lp/hero_dots01.png) repeat right top;
	background-size: 1.8rem 1.8rem;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.c-discover__inner-ttl {
	margin: 0;
	color: #fff;
	font-size: 3.611rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-discover__inner-txt01 {
	margin-top: .5rem;
	color: #fff;
	font-size: 1.806rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.33293341;
}

.c-discover__inner-list {
	display: flex;
	justify-content: center;
	gap: 0 8rem;
	padding: 0 1rem;
	margin-top: 4rem;
}

.c-discover__inner-list-sec {
	width: 18.1rem;
	position: relative;
	z-index: 1;
}

.c-discover__inner-list-sec .plus {
	width: 2.4rem;
	margin-top: 2.4rem;
	margin-left: .6rem;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.c-discover__inner-list-sec .pic {
	text-align: center;
	position: relative;
	z-index: 1;
}

.c-discover__inner-list-sec .pic:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: .6rem solid #00b0eb;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;
}

.c-discover__inner-list-sec .pic img {
	width: 100%;
	max-width: none;
	border-radius: 50%;
}

.c-discover__inner-list-sec .ttl {
	margin: 1.5rem -2em 0;
	color: #fff;
	font-size: 1.944rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
}

.c-discover__inner-list-sec .txt01 {
	margin: 1rem -2em 0;
	color: #fff;
	font-size: 1.25rem;
	font-style: italic;
	text-align: center;
	line-height: 1.2;
}

.c-discover__inner-btn01 {
	margin-top: 3rem;
	text-align: center;
}

.c-discover__inner-btn-area {
	display: flex;
	justify-content: center;
	gap: 0 2.5rem;
	margin-top: 5.5rem;
}

.c-discover__inner-btn-area .btn01 {
}

.c-discover__inner-btn-area .btn01 a.c-btn01 {
	min-width: 25rem;
	padding-left: 1rem;
	padding-right: 1rem;
	text-align: center;
}

.c-discover__inner-btn-area .btn02 {
}

.c-discover__inner-btn-area .btn02 a.c-btn01 {
	min-width: 25rem;
	padding-left: 1rem;
	padding-right: 1rem;
	text-align: center;
}

@media screen and (max-width:767px){

	.c-discover {
		background: url(../img/lp/discover_bg01_sp.png) no-repeat center center / cover;
	}

	.c-discover__inner {
		padding: 2.5rem 0 3.5rem;
	}

	.c-discover__inner:before {
		content: "";
		display: block;
		width: calc(100% + 100vw);
		height: 26rem;
		margin-left: 20rem;
		background: url(../img/lp/hero_dots01.png) repeat right top;
		background-size: 1.2rem 1.2rem;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;
	}

	.c-discover__inner-ttl {
		font-size: 2.639rem;
		line-height: 1.2;
	}

	.c-discover__inner-txt01 {
		margin: 1.2rem 0 0;
		font-size: 1.387rem;
		text-align: center;
		line-height: 1.2;
	}

	.c-discover__inner-list {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 2.5rem 4.8rem;
		width: 31.2rem;
		padding: 0;
		margin: 3rem auto 0;
	}

	.c-discover__inner-list-sec {
		width: calc(100%/2 - 2.4rem);
		flex: 0 1 calc(100%/2 - 2.4rem);
	}

	.c-discover__inner-list-sec .plus {
		width: 1.6rem;
		margin-top: .9rem;
		margin-left: 1.4rem;
	}

	.c-discover__inner-list-sec .plus img {
		display: block;
		width: 100%;
		max-width: none;
	}

	.c-discover__inner-list-sec .ttl {
		margin: 1rem -1em 0;
		font-size: 1.25rem;
		line-height: 1.3;
	}

	.c-discover__inner-list-sec .txt01 {
		margin: .75rem -1.5em 0;
		font-size: .833rem;
	}

	.c-discover__inner-btn01 {
		margin-top: 2.5rem;
	}

	.c-discover__inner-btn-area {
		display: flex;
		justify-content: center;
		gap: 1rem;
		margin-top: 3rem;
		margin-left: -1rem;
		margin-right: -1rem;
	}

	.c-discover__inner-btn-area .btn01 a.c-btn01 {
		min-width: 15rem;
		padding: .7rem .8rem;
		font-size: 1rem;
	}

	.c-discover__inner-btn-area .btn02 a.c-btn01 {
		min-width: 15rem;
		padding: .7rem .8rem;
		font-size: 1.032rem;
	}
}



/**********************************

 c-icons

***********************************/
.c-icons {
	background: url(../img/lp/icons_bg01_pc.jpg) no-repeat center center / cover;
	position: relative;
	z-index: 1;
}

.c-icons:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/lp/icons_bg02_pc.png) no-repeat center center;
	background-size: 111rem 57rem;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-icons__inner {
	padding: 4rem 0 5rem;
}

.c-icons__inner-ttl {
	margin: 0;
	font-size: 3.75rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-icons__inner-txt01 {
	margin: .5rem 0 0;
	font-size: 1.806rem;
	text-align: center;
	line-height: 1.2;
}

.c-icons__inner-list {
	display: flex;
	justify-content: space-between;
	padding: 0 1rem;
	margin-top: 2rem;
}

.c-icons__inner-list-sec {
	width: 19.3rem;
	position: relative;
	z-index: 1;
}

.c-icons__inner-list-sec .pic {
	text-align: center;
}

.c-icons__inner-list-sec .pic img {
	width: 100%;
	max-width: none;
	border-radius: 1.5rem;
}

.c-icons__inner-list-sec .ttl {
	margin: 1.2rem -1.5em 0;
	color: #000000;
	font-size: 1.731rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.2;
}

.c-icons__inner-list-sec .txt01 {
	margin: .8rem -1.5em 0;
	font-size: 1.25rem;
	font-style: italic;
	text-align: center;
	line-height: 1.4;
}

.c-icons__inner-btn {
	margin-top: 3rem;
	text-align: center;
}

@media screen and (max-width:767px){

	.c-icons {
		background: url(../img/lp/icons_bg01_sp.jpg) no-repeat center center / cover;
		overflow: hidden;
	}

	.c-icons:before {
		background: url(../img/lp/icons_bg02_sp.png) no-repeat center center / cover;
	}

	.c-icons__inner {
		padding: 2.5rem 0 3.5rem;
	}

	.c-icons__inner-ttl {
		font-size: 2.361rem;
		line-height: 1.2;
	}

	.c-icons__inner-txt01 {
		margin: 1rem 0 0;
		font-size: 1.387rem;
	}

	.c-icons__inner-wrap {
		width: 19.2rem;
		margin: 0 auto;
	}

	.c-icons__inner-list {
		display: block;
		padding: 0;
		margin-top: 1rem;
		margin-right: calc(50% - 50vw);
		margin-bottom: 0 !important;
		/*overflow: hidden;*/
	}

	.c-icons__inner-list .slick-list {
		overflow: visible !important;
	}

	.c-icons__inner-list .slick-prev {
		/*display: none !important;*/
		width: 2.8rem;
		height: 5.3rem;
		background: url(../img/lp/icon_prev01.png) no-repeat center / contain;
		position: absolute;
		top: 5.5rem;
		left: -7rem;
		z-index: 2;
		transform: none;
		-webkit-transform: none;
	}

	.c-icons__inner-list .slick-prev:before {
		display: none;
	}

	.c-icons__inner-list .slick-next {
		width: 2.8rem;
		height: 5.3rem;
		background: url(../img/lp/icon_next01.png) no-repeat center / contain;
		position: absolute;
		top: 5.5rem;
		left: 23.5rem;
		right: auto;
		z-index: 2;
		transform: none;
		-webkit-transform: none;
	}

	.c-icons__inner-list .slick-next:before {
		display: none;
	}

	.c-icons__inner-list .slick-dots {
		padding-right: 9rem;
		font-size: 0;
		bottom: -2rem;
		z-index: 2;
	}

	.c-icons__inner-list .slick-dots li {
		width: .4rem;
		height: .4rem;
		margin: 0 .15rem;
		/*background: #000;*/
		background: rgba(255,200,69,.4);
		border-radius: 50%;
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.c-icons__inner-list .slick-dots li.slick-active {
		width: 2.3rem;
		border-radius: 20rem;
	}

	.c-icons__inner-list .slick-dots li button {
		display: none;
	}

	.c-icons__inner-list .slick-list {
		margin-right: -2.5rem;
	}

	.c-icons__inner-list .slick-track {
	}

	.c-icons__inner-list-sec {
		width: auto;
		margin-right: 2.5rem;
		position: relative;
		z-index: 1;
	}

	.c-icons__inner-list-sec .pic {
		width: 19.2rem;
		text-align: center;
	}

	.c-icons__inner-list-sec .pic img {
		width: 100%;
		max-width: none;
		border-radius: 1.5rem;
	}

	.c-icons__inner-list-sec .ttl {
		width: 19.2rem;
		margin: .8rem 0 0;
		font-size: 1.806rem;
		line-height: 1.05;
	}

	.c-icons__inner-list-sec .txt01 {
		width: 19.2rem;
		margin: .4rem 0 0;
		font-size: 1.25rem;
	}

	.c-icons__inner-btn {
		margin-top: 4rem;
	}
}



/**********************************

 c-limits

***********************************/
.c-limits {
	background: url(../img/lp/limits_bg01_pc.jpg) no-repeat center center / cover;
	position: relative;
	z-index: 1;
}

.c-limits:before {
	content: "";
	display: block;
	width: 150rem;
	height: 100%;
	background: url(../img/lp/limits_bg02_pc.png) no-repeat center -6.5rem;
	background-size: 150rem auto;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.c-limits__inner {
	padding: 5rem 0 5.5rem;
}

.c-limits__inner-ttl {
	color: #fff;
	font-size: 3.6rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-limits__inner-txt01 {
	margin-top: 1em;
	color: #fff;
	font-size: 2.083rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.05;
}

.c-limits__inner-txt01:first-of-type {
	margin-top: 4.5rem;
}

.c-limits__inner-btn {
	margin-top: 7rem;
	text-align: center;
}

@media screen and (max-width:767px){

	.c-limits {
		background: url(../img/lp/limits_bg01_sp.jpg) no-repeat center top / cover;
	}

	.c-limits:before {
		display: none;
	}

	.c-limits__inner {
		padding: 5.5rem 0 5rem;
	}

	.c-limits__inner-ttl {
		font-size: 2.361rem;
		line-height: 1.05;
	}

	.c-limits__inner-txt01 {
		width: 27rem;
		margin-top: 1em;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 0;
		font-size: 1.389rem;
		/*text-align: left;*/
		line-height: 1.6;
	}

	.c-limits__inner-txt01:first-of-type {
		margin-top: 2.5rem;;
	}

	.c-limits__inner-btn {
		margin-top: 5rem;
		text-align: center;
	}
}



/**********************************

 c-design

***********************************/
.c-design {
	background: url(../img/lp/design_bg01_pc.jpg) no-repeat center top / cover;
}

.c-design__inner {
	padding: 4.5rem 0 4rem;
	position: relative;
	z-index: 1;
}

.c-design__inner:before {
	content: "";
	display: block;
	width: calc(100% + 100vw);
	height: 15rem;
	margin-left: 79rem;
	background: url(../img/lp/hero_dots01.png) repeat right top;
	background-size: 1.8rem 1.8rem;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.c-design__inner-ttl {
	margin: 0;
	color: #fff;
	font-size: 3.611rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-design__inner-list {
	display: flex;
	justify-content: space-between;
	width: 80rem;
	max-width: 100%;
	margin: 1.5rem auto 0;
}

.c-design__inner-list-item {
	width: 24rem;
	position: relative;
	z-index: 1;
}

.c-design__inner-list-item .plus {
	width: 2.4rem;
	margin-top: -1.1rem;
	margin-left: -1.2rem;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.c-design__inner-list-item .plus img {
	display: block;
}

.c-design__inner-list-item .pic {
	position: relative;
	z-index: 1;
}

.c-design__inner-list-item .pic img {
	display: block;
	width: 100%;
	max-width: none;
	border-radius: 1rem;
}

.c-design__inner-txt01 {
	margin-top: 2.5rem;
	color: #fff;
	font-size: 2.083rem;
	text-align: center;
	line-height: 1.25;
}

@media screen and (max-width:767px){

	.c-design {
		background: url(../img/lp/design_bg01_sp.jpg) no-repeat center top / cover;
	}

	.c-design__inner {
		padding: 3rem 0 3rem;
	}

	.c-design__inner:before {
		height: 13.5rem;
		margin-left: 26rem;
		background: url(../img/lp/hero_dots01.png) repeat right top;
		background-size: 1.2rem 1.2rem;
	}

	.c-design__inner-ttl {
		margin: 0;
		font-size: 2.361rem;
		line-height: 1.2;
	}

	.c-design__inner-list {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 0 2.5rem;
		width: auto;
		margin: 1.8rem auto 0;
	}

	.c-design__inner-list-item {
		width: calc(100%/2 - 1.3rem);
		flex: 0 1 calc(100%/2 - 1.3rem);
	}

	.c-design__inner-list-item:last-child {
		margin-top: -3rem;
	}

	.c-design__inner-list-item .plus {
		width: 1.6rem;
		margin-top: -.8rem;
		margin-left: -.7rem;
	}

	.c-design__inner-list-item .pic img {
		border-radius: 1rem;
	}

	.c-design__inner-txt01 {
		margin-top: 2rem;
		margin-bottom: 0;
		font-size: 1.389rem;
		text-align: center;
		line-height: 1.33293341;
	}

}


/**********************************

 c-insights

***********************************/
.c-insights {
	background: url(../img/lp/insights_bg01_pc.jpg) no-repeat center top / cover;
}

.c-insights__inner {
	padding: 4.5rem 0 5rem;
}

.c-insights__inner-ttl {
	margin: 0;
	font-size: 4.167rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-insights__inner-txt01 {
	margin-top: .5rem;
	font-size: 2.083rem;
	text-align: center;
	line-height: 1.25;
}

.c-insights__inner-btn {
	margin-top: 2rem;
	text-align: center;
}

@media screen and (max-width:767px){

	.c-insights {
		background: url(../img/lp/insights_bg01_sp.jpg) no-repeat center top / cover;
	}

	.c-insights__inner {
		padding: 3rem 0 4rem;
	}

	.c-insights__inner-ttl {
		margin: 0;
		font-size: 2.361rem;
		line-height: 1.2;
	}

	.c-insights__inner-txt01 {
		margin-top: 1.5rem;
		font-size: 1.389rem;
		line-height: 1.33293341;
	}

	.c-insights__inner-btn {
		margin-top: 2rem;
		text-align: center;
	}
}

/**********************************

 c-cv

***********************************/
.c-cv {
	background: #000f3c;
}

.c-cv__inner {
	padding-top: 4rem;
	padding-bottom: 5rem;
	position: relative;
	z-index: 1;
}

.c-cv__inner:before {
	content: "";
	display: block;
	width: calc(100% + 100vw);
	height: 32rem;
	margin-right: 78rem;
	background: url(../img/lp/cv_bg01_pc.png) repeat right 1.8rem;
	background-size: 1.8rem 1.8rem;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}

.c-cv__inner:after {
	content: "";
	display: block;
	width: calc(100% + 100vw);
	height: 19.2rem;
	margin-left: 71rem;
	background: url(../img/lp/cv_bg01_pc.png) repeat right top;
	background-size: 1.8rem 1.8rem;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.c-cv__inner-ttl {
	margin: 0;
	color: #fff;
	font-size: 3.54rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
}

.c-cv__inner-txt01 {
	margin-top: 1.5rem;
	color: #fff;
	font-size: 1.667rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.33293341;
}

.c-cv__inner-btn {
	margin-top: 3.5rem;
	text-align: center;
}

.c-cv__inner-logo {
	width: 14.4rem;
	margin: 5rem auto 0;
}

@media screen and (max-width:767px){

	.c-cv__inner {
		padding-top: 3rem;
		padding-bottom: 4rem;
	}

	.c-cv__inner:before {
		margin-right: 30rem;
		background: url(../img/lp/cv_bg01_sp.png) repeat right 1.4rem;
		background-size: 1.8rem 1.8rem;
	}

	.c-cv__inner:after {
		margin-left: 30rem;
		background: url(../img/lp/cv_bg01_sp.png) repeat right 1.8rem;
		background-size: 1.8rem 1.8rem;
	}

	.c-cv__inner-ttl {
		margin: 0;
		font-size: 2.361rem;
		line-height: 1.2;
	}

	.c-cv__inner-txt01 {
		margin-top: 1.2rem;
		font-size: 1.389rem;
		line-height: 1.33293341;
	}

	.c-cv__inner-btn {
		margin-top: 2.5rem;
	}

	.c-cv__inner-logo {
		width: 14.4rem;
		margin: 3.5rem auto 0;
	}
}


/**********************************

 c-fixed-btn

***********************************/
.c-fixed-btn {
	width: 8.5rem;
	position: fixed;
	bottom: 5.2rem;
	right: 5.2rem;
	z-index: 10;
}

.c-fixed-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 8.5rem;
	height: 8.5rem;
	text-decoration: none;
	background: rgba(255,201,69,.75);
	border: .3rem solid rgba(255,255,255,.75);
	border-radius: 50%;
	transition: background 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-fixed-btn a:hover {
	background: rgba(255,219,132,.75);
}

.c-fixed-btn a .icon {
	display: block;
	padding-top: 2.2rem;
	font-size: 1.389rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.28571429;
	position: relative;
	z-index: 1;
}

.c-fixed-btn a .icon-none {
	display: block;
	font-size: 1.389rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.28571429;
	position: relative;
	z-index: 1;
}

.c-fixed-btn a .icon:before {
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background: url(../img/lp/icon_blank01.png) no-repeat center / contain;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

@media screen and (max-width:767px){
	.c-fixed-btn {
		width: 87px;
		bottom: 1.2rem;
		right: 1.2rem;
	}

	.c-fixed-btn a {
		width: 87px;
		height: 87px;
		border: 2px solid rgba(255,255,255,.75);
	}

	.c-fixed-btn a:hover {
		background: rgba(255,201,69,.75);
	}

	.c-fixed-btn a .icon {
		padding-top: 22px;
		font-size: 13.89px;
	}

	.c-fixed-btn a .icon-none {
		font-size: 13.89px;
	}

	.c-fixed-btn a .icon:before {
		width: 16px;
		height: 16px;
	}

}


/**********************************

 xxx

***********************************/

@media screen and (max-width:767px){

}

