html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {	box-sizing: border-box;	margin: 0;	padding: 0;	border: 0;	font-size: 100%;	font: inherit;	vertical-align: baseline;}html{ font-size: 62.5%;}body{	background: #333;	color: #000;	font-family: "Helvetica Neue",	Arial,	"Hiragino Kaku Gothic ProN",	"Hiragino Sans",	Meiryo,	sans-serif;}#container{	background: #fff;	margin: 0 auto;}.common-wrapper{	margin: 0 auto;	max-width: 1100px;	padding: 50px 0;	width: 90%;}h2.common{	border-bottom: 4px solid #00b7a4;	font-size: 3.6rem;	font-weight: bold;	line-height: 1em;	text-align: center;	margin-bottom: 35px;	padding-bottom: 10px;}h2.common .small{	font-size: 75%;}h3.common{	background: #000;	color: #00b7a4;	font-size: 2.8rem;	font-weight: bold;	line-height: 1em;	margin: 0 0 20px;	padding: 10px 0;	text-align: center;}h2.common + p,h3.common + p{	font-size: 1.6rem;	line-height: 1.25em;	text-align: center;}h2.common + p span,h3.common + p span{	color: #00b7a4;	font-weight: bold;}.fadein {	opacity: 0;	transform: translate(0,30px);	transition: all .8s;}.scrollin{	opacity: 1 !important;	transform: translate(0, 0) !important;}.common-cta a{	background: #ff500d;	border-radius: 5px;	box-shadow: 0 5px 10px rgba(0,0,0,0.25);	color: #fff;	display: block;	font-weight: bold;	margin: 0 auto;	max-width: 800px;	padding: 5px 0 3px;	text-decoration: none;	transition: all .4s;}.common-cta a:hover{	transform:scale(1.05,1.05);}.common-cta a .sub{	border-bottom: solid #fff 2px;	font-size: clamp(1rem, 3.5vw, 2rem);	margin: 0 auto;	text-align: center;	width: 65%;}.common-cta a .main{	display: flex;	align-items: center;	justify-content: center;	font-size: 24px;	gap: 10px;}.common-cta a .main:before{	background: url(img/header-cta-icon.png);	background-size: auto 24px;	content: "";	display: inline-block;	height: 24px;	margin-right 20px;	width: 29px;}@media screen and (min-width:768px) {.common-cta a{	border-radius: 10px;	padding: 10px 0 6px;}.common-cta a .main{	font-size: 34px;}}@media screen and (min-width:1025px) {.common-wrapper{	padding: 80px 0;}h2.common{	border-bottom: 6px solid #00b7a4;	font-size: 6rem;	margin: 0 auto 50px;	width: 50%;}h3.common{	font-size: 4rem;	margin: 0 0 40px;	padding: 15px 0;}h2.common + p,h3.common + p{	font-size: 2rem;	text-align: center;}}/*ーーーーーーーーーーーーーーーーーーーーヘッダーーーーーーーーーーーーーーーーーーーーー*/#top header{	background-image: url(img/header-bg.png);	background-position: right bottom;	background-repeat: no-repeat;	background-size: 120% auto;	height: 100vh;	height: 100svh;	position: relative;}#top header .wrapper{	display: flex;	flex-direction: column;	justify-content: space-between;	height: 100vh;	height: 100svh;}header .logo{	margin: 20px 0 20px 5%;	width: 120px;}header h1{	margin: 0 auto 10px;	width: 90%;}header h1 p{	background: #00b7a4;	color: #fff;	font-weight: bold;	font-size: 1.4rem;	padding: 2px;	text-align: center;	width: 80%;}header h1 img{	display: block;}header h1 .header-geo{	margin: 0 0 5px;	width: 80%;}header h1 .header-h1{	margin: 0;	width: 100%;}header h1 .pc{	display: none;}header .bnr{	display: block;	margin: 0 auto 15px;	width: 90%;}header .header-img{	display: block;	filter: drop-shadow(5px 5px 10px rgba(0, 0, 0, 0.5));	margin: 0 auto;	position: relative;	width: 90%;}header .header-img:after{	bottom: -20px;	content: "※画面デザインは変更となる場合があります。";	color: #000;	font-weight: normal;	position: absolute;	right: 0;}header .header-img img{	display: block;	width: 100%;}header .cta{	margin: 30px auto 0;	padding-bottom: 30px;	text-align: center;	width: 90%;}header .cta a{	background: #01599d;	border-radius: 5px;	box-shadow: 0 5px 10px rgba(0,0,0,0.25);	color: #fff;	display: block;	font-weight: bold;	padding: 5px 0 3px;	text-decoration: none;	transition: all .4s;}header .cta a:not(:last-of-type){	margin-bottom: 10px;}header .cta a .sub{	border-bottom: solid #fff 2px;	font-size: clamp(1rem, 3.5vw, 2rem);	margin: 0 auto;	width: 65%;}header .cta a .main{	display: flex;	align-items: center;	justify-content: center;	font-size: 24px;	gap: 10px;}header .cta a .main:before{	background: url(img/header-cta-icon.png);	background-size: auto 24px;	content: "";	display: inline-block;	height: 24px;	margin-right 20px;	width: 29px;}header .cta a.download{	background: #020a4b;}header .cta a.download .main:before{	background-position: 29px 0;}header .cta a:hover{	transform:scale(1.05,1.05);}@media screen and (min-width:768px) {header .cta{	bottom: 10px;	display: flex;	justify-content: space-between;}header .cta a{	border-radius: 10px;	padding: 10px 0 6px;	width: 48%;}header .cta a:not(:last-of-type){	margin-bottom: 0;}header .cta a .main{	font-size: 34px;}}@media screen and (min-width:1025px) {#top header{	background-image: url(img/header-bg-pc.png);}#top header .wrapper{	height: 100vh;	height: 100svh;	margin: 0 auto;	max-width: 2000px;	width: 90%;	position: relative;}header .logo{	margin: 40px 0 20px;}header .bnr{	position: absolute;	right: 25px;	top: 75px;	width: 35%;}header h1{	margin: 0 0 20px;	width: 50%;}header h1 p{	font-size: 1.6rem;	padding: 4px;	width: 100%;}header h1 img{	width: 100%!important;}header h1 .header-geo{	margin: 0 0 20px;}header h1 .sp{	display: none;}header h1 .pc{	display: block;	width: 90%;}header .header-img{	bottom: 30px;	position: absolute;	right: 0;	width: 55%;}header .header-img p{	bottom: -5px;	font-size: 10px;	position: absolute;	right: 0;}header .cta{	display: block;	bottom: 40px;	left: 0;	position: absolute;	width: 40%;}header .cta a{	width: 100%;}header .cta a:not(:last-of-type){	margin-bottom: 15px;}}/*ーーーーーーーーーーーーーーーーーーーーラクソクとは？ーーーーーーーーーーーーーーーーーーーー*/#about{	background-color: #46e4d0;	background-image: url(img/about-bg.png);	background-position: right top;	background-repeat: no-repeat;	background-size: 100% auto;}#about h2{	font-size: 3.6rem;	font-weight: bold;	letter-spacing: -2px;	margin: 0 0 20px;	text-align: center;}#about p{	font-size: clamp(1rem, 4vw, 2rem);	text-align: center;}#about .common-wrapper{	padding: 60px 0;}#about img{	display: block;	margin: 15px auto;	max-width: 700px;	width: 100%;}@media screen and (min-width:600px) {#about p br{	display: none;}}@media screen and (min-width:1025px) {#about h2{	font-size: 6rem;}}/*ーーーーーーーーーーーーーーーーーーーー出来高管理が高精度・高速・簡単に。ーーーーーーーーーーーーーーーーーーーー*/#explanation h2{	white-space: nowrap;}#explanation h2 .dot{	letter-spacing: -8px;}#explanation h3 span{	font-family: "M PLUS 1p", sans-serif;	font-weight: 700;	font-style: normal;}#explanation ul{	display: flex;	flex-direction: column;	gap: 10px;	list-style: none;	margin: 20px 0 30px;}#explanation li{	align-items: center;	border: solid #00b7a4 2px;	border-radius: 6px;	display: flex;	flex-grow: 1;	padding: 5px 8px;}#explanation li p{	font-size: 1.7rem;	line-height: 1.2em;	padding-left: 10px;}#explanation li p .small{	font-size: 75%;}#explanation li p .bold{	color: #00b7a4;	font-weight: bold;}#explanation li .icon{	aspect-ratio: 1;	background-color: #00b7a4;	background-image: url(../img/explanation-icon.png);	background-size: auto 100%;	border-radius: 100%;	width: 60px;}#explanation li:nth-of-type(2) .icon{	background-position: -100% 0;}#explanation li:nth-of-type(3) .icon{	background-position: -200% 0;}#explanation .graph .caption{	border: solid #000 1px;	border-radius: 30px;	font-size: 1.6rem;	height: 30px;	line-height: 28px;	margin: 0 0 20px;	text-align: center;}#explanation .graph img{	width: 100%;}@media screen and (min-width:700px) {#explanation .flexbox{	display: flex;	gap: 30px;	padding-top: 40px;}#explanation ul{	margin: 0;	width: 60%;}#explanation .graph{	width: 40%;}}@media screen and (min-width:1024px) {#explanation h2{	font-size: 5.2rem;}#explanation li{	padding: 5px 15px;}#explanation li p{	font-size: 2.4rem;	padding-left: 15px;}#explanation li .icon{	width: 80px;}}@media screen and (min-width:1220px) {#explanation h2{	font-size: 6rem;}}/*ーーーーーーーーーーーーーーーーーーーーワークフローーーーーーーーーーーーーーーーーーーーー*/#workflow{	background: #eee;}#workflow .wrapper{	margin: 0 0 40px;}#workflow .wrapper:last-of-type{	margin: 0;}#workflow .wrapper img{	border: solid #666 1px;	display: block;	margin: 0 0 15px;	width: 100%;}#workflow .wrapper p{	font-size: 1.4rem;}#workflow .note{	padding-top: 20px;	text-align: right;}#workflow .common-cta{	display: none;}@media screen and (min-width:640px) {#workflow .flexbox{	display: flex;	justify-content: space-between;}#workflow .wrapper{	margin: 0 0 20px;	width: 32%;}#workflow .wrapper h3{	font-size: 1.8rem;}#workflow .note{	padding-top: 0;}}@media screen and (min-width:1024px) {#workflow .wrapper{	margin: 0 0 40px;	width: 31%;}#workflow .wrapper h3{	font-size: 2.4rem;	height: 50px;	line-height: 50px;	padding: 0!important;	position: relative;}#workflow .wrapper:not(:last-of-type) h3:after{	border: solid 25px transparent;	border-left: solid #000 20px;	border-right: none;	content: "";	height: 0;	position: absolute;	right: -20px;	top: 0;	width: 0;}}/*ーーーーーーーーーーーーーーーーーーーー基本機能ーーーーーーーーーーーーーーーーーーーー*/#performance{	background: #dde7e6;	position: relative;}#performance ul{	display: flex;	justify-content: space-between;	list-style: none;	margin: 0 0 20px;}#performance li{	display: flex;	flex-direction: column;	text-align: center;	width: 30%;}#performance li .icon{	aspect-ratio: 1;	background-color: #00b7a4;	background-image: url(../img/performance-icon.png);	background-size: auto 100%;	border-radius: 100%;	margin: 0 auto 10px;	width: 100%;}#performance li:nth-of-type(2) .icon{background-position: -100% 0;}#performance li:nth-of-type(3) .icon{background-position: -200% 0;}#performance li:nth-of-type(4) .icon{background-position: -300% 0;}#performance li p{	font-size: 1.4rem;	font-weight: bold;	line-height: 1.2em;}#performance ul + div p{	font-size: 1.4rem;	margin: 0 0 5px;	text-align: center;}#performance #pdf{	align-items: center;	background: #ff500d;	border-radius: 5px;	box-shadow: 0 5px 10px rgba(0,0,0,0.25);	color: #fff;	display: flex;	gap: 10px;	justify-content: center;	margin: 0 auto;	max-width: 800px;	padding: 10px 0;	position: relative;	text-align: center;	text-decoration: none;	transition: all .4s;	white-space: nowrap;}#performance #pdf p{	font-size: 2.4rem;	font-weight: bold;	margin: 0;}#performance #pdf:before{	background-image: url(../img/icon-download.png);	background-size: cover;	content: "";	display: block;	height: 30px;	width: 30px;}#performance #pdf:hover{	transform:scale(1.05,1.05);}@media screen and (min-width:600px) {#performance ul{	margin: 0 auto 40px;	width: 85%;}#performance li{	width: 25%;}#performance li .icon{	width: 75%;}#performance li p{	font-size: 2rem;	white-space: nowrap;}#performance ul + div p br{	display: none;}}@media screen and (min-width:1024px) {#performance li .icon{	width: 60%;}#performance li p br{	display: none;}#performance ul + div p{	font-size: 1.6rem;	margin: 0 0 10px;}#performance #pdf{	padding: 15px 0;}#performance #pdf p{	font-size: 3.4rem;}#performance #pdf:before{	height: 40px;	width: 40px;}}/*ーーーーーーーーーーーーーーーーーーーーレンタルプランーーーーーーーーーーーーーーーーーーーー*/#service-plan .wrapper{	border-radius: 10px;	font-size: 1.3rem;	margin: 20px 0 0;	overflow: hidden;	padding: 10px;}#service-plan .wrapper:nth-of-type(1){	background: #25c18f;}#service-plan .wrapper:nth-of-type(2){	background: #00b7a4;}#service-plan .wrapper:nth-of-type(3){	background: #0376a6;}#service-plan .wrapper h3{	color: #fff;	font-size: 2.6rem;	font-weight: bold;	margin: 0;	padding: 0;	text-align: center;}#service-plan .wrapper h3 span{	font-size: 65%;}#service-plan .wrapper .inner{	background: #fff;	border-radius: 10px;	padding: 20px;}#service-plan .wrapper h4{	border-radius: 30px;	color: #ff500d;	font-size: 1.8rem;	font-weight: bold;	height: 30px;	line-height: 26px;	margin: 0 auto 10px;	text-align: center;	width: 90%;}#service-plan .wrapper:nth-of-type(1) h4{	border: solid #25c18f 2px;	color: #25c18f;}#service-plan .wrapper:nth-of-type(2) h4{	border: solid #00b7a4 2px;	color: #00b7a4;}#service-plan .wrapper:nth-of-type(3) h4{	border: solid #0376a6 2px;	color: #0376a6;}#service-plan .wrapper h4:not(:first-of-type){	margin-top: 30px;}#service-plan .wrapper p.content{	font-size: 1.6rem;	font-family: "M PLUS 1p", sans-serif;	font-weight: 500;	font-style: normal;	margin: 0 0;	text-align: center;	white-space: nowrap;}#service-plan .wrapper p.content > span{	font-size: 200%;	font-weight: 700;}#service-plan .wrapper p.content > span span{	font-size: 75%;}#service-plan .wrapper .bnr{	display: block;	width: 100%;}#service-plan .wrapper .price br{	display: none;}#service-plan .wrapper .flexbox{	display: flex;	justify-content: center}#service-plan .wrapper ul{	padding-left: 1em;}#service-plan .wrapper .txt{	text-align: center;}#service-plan p.note{	margin-top: 10px;}@media screen and (min-width:960px) {#service-plan .flex-pc{	display: flex;	justify-content: space-between;}#service-plan .wrapper{	width: 32%;}#service-plan .wrapper .price{	line-height: 1.5em;}#service-plan .wrapper h4 + .price{	margin: 0 0 15px;}#service-plan .wrapper .price br{	display: block;}#service-plan .wrapper:nth-of-type(3){	display: flex;	flex-wrap: wrap;	gap: 10px;}#service-plan .wrapper:nth-of-type(3) h3{	height: 30px;	width: 100%;}#service-plan .wrapper:nth-of-type(3) .inner{	height: calc(100% - 40px);	width: 100%;}#service-plan .wrapper:nth-of-type(3) .inner p{	display: block;	height: 100%;	line-height: 400px;}}@media screen and (min-width:1024px) {#service-plan h2 + p br{	display: none;}#service-plan .wrapper{	width: 32%;}#service-plan .wrapper:nth-of-type(3){	display: flex;	flex-wrap: wrap;	gap: 10px;}#service-plan .wrapper:nth-of-type(3) h3{	height: 30px;	width: 100%;}#service-plan .wrapper:nth-of-type(3) .inner{	height: calc(100% - 40px);	width: 100%;}#service-plan .wrapper:nth-of-type(3) .inner p{	display: block;	height: 100%;	line-height: 400px;}}@media screen and (min-width:1124px) {#service-plan .wrapper .price{	line-height: initial;}#service-plan .wrapper h4 + .price{	margin: 0;}#service-plan .wrapper .price br{	display: none;}}/*ーーーーーーーーーーーーーーーーーーーー問い合わせフォームーーーーーーーーーーーーーーーーーーーー*/#contact .bnr{	display: block;	margin: 0 auto;	max-width: 800px;	width: 100%;}#contact .bnr + p{	background: #ce2a5c;	color: #fff;	font-size: 1.4rem;	margin: 0 auto;	max-width: 800px;	padding: 5px 0;	text-align: center;}@media screen and (min-width:840px) {#contact h2 + p{	font-size: 1.4rem;}#contact .bnr,#contact .bnr + p{	width: 90%;}}@media screen and (min-width:900px) {#contact h2 + p{	background: none;}#contact .form-wrapper{	background: #f6f6f6;	padding: 20px 0;}}/*ーーーーーーーーーーーーーーーーーーーーフッターーーーーーーーーーーーーーーーーーーーー*/footer{	background: #1a1a1a;	color: #d2d2d2;}footer .logo{	height: 30px;	width: 200px;	margin: 0 auto 10px;	mask: no-repeat center/70%;	-webkit-mask: no-repeat center/70%;	background-color: #d2d2d2;	mask-image: url(img/logo.png);	-webkit-mask-image: url(img/logo.png);}footer .link{	font-size: 1.2rem;	margin: 0 0 20px;	text-align: center;}footer a{	color: #d2d2d2;}footer .trademark{	margin: 0 0 1em;}footer .address{	margin: 0 0 1em;}footer .copyrights{	text-align: center;}@media screen and (min-width:500px) {footer .trademark{	text-align: center;}footer .address{	text-align: center;}}@media screen and (min-width:840px) {footer .common-wrapper{	height: 200px;	position: relative;}footer .logo{	left: -30px;	position: absolute;	top: 30px;}footer .link{	font-size: 1.4rem;	right: 0;	position: absolute;	top: 30px;}footer a{	color: #d2d2d2;}footer .trademark{	right: -5px;	position: absolute;	top: 60px;}footer .address{	right: -5px;	position: absolute;	text-align: right;	top: 90px;}footer .copyrights{	font-size: 1.2rem;	left: 0;	position: absolute;	top: 80px;}}/*ーーーーーーーーーーーーーーーーーーーーサンクスページ/ダウンロードページーーーーーーーーーーーーーーーーーーーー*/#thanks .container,#download .container{	background-color: #fff;	background-image: url(img/header-bg-pc.png);	background-position: right bottom;	background-repeat: no-repeat;	background-size: cover;	margin: 0 auto;	min-height: calc(100svh - 200px);	border: solid black 1px;}#thanks header,#download header{	background: rgba(255,255,255,0.8);	margin-bottom: 30px;}#thanks header .wrapper,#download header .wrapper{	margin: 0 auto;	max-width: 1100px;	position: relative;	width: 90%;}#thanks header .logo,#download header .logo{	margin: 15px 0;	width: 180px;}#thanks header .mail,#download header .mail{	display: block;	position: absolute;	right: 50px;	top: 18px;	transition: all .4s;}#thanks header .mail:hover,#download header .mail:hover{	opacity: 0.75;}#thanks header .mail img,#download header .mail img{	height: 24px;}#thanks #thx{	background: rgba(255,255,255,0.8);	border: solid #fff 1px;	margin: 0 auto 30px;	max-width: 500px;	padding: 20px;	width: 90%;}#thanks #thx h2{	font-size: 2rem;	font-weight: bold;	letter-spacing: 1px;	margin: 20px;	text-align: center;}#thanks #thx p{	font-size: 1.6rem;	margin-bottom: 1em;}#thanks #thx .back{	background: #ff500d;	border-radius: 5px;	color: #fff;	display: block;	font-size: 1.6rem;	font-weight: bold;	padding: 10px 0;	text-align: center;	text-decoration: none;	transition: all .4s;}#thanks #thx .back:hover{	opacity: 0.75;}#thanks .hamburger,#download .hamburger{	position: absolute;	top: 20px;	right: 0;	z-index: 100;	width: 26px;	height: 26px;	border: none;	background: transparent;	cursor: pointer;}.hamburger:hover{	opacity: 0.75;}.hamburger-line {	position: absolute;	left: 0;	width: 26px;	height: 2px;	background-color: #333;	transition: all .4s;}.hamburger-line:nth-of-type(1) {	top: 0px;}.hamburger-line:nth-of-type(2) {	top: 9px;}.hamburger-line:nth-of-type(3) {	top: 18px;}/* メニューオープン時 */.hamburger.active .hamburger-line:nth-of-type(1) {	transform: translateY(9px) rotate(-45deg);}.hamburger.active .hamburger-line:nth-of-type(2) {	opacity: 0;}.hamburger.active .hamburger-line:nth-of-type(3) {	transform: translateY(-9px) rotate(45deg);}.nav {	position: fixed;	top: 0;	left: 0;	width: 300px;	height: 100vh;	background-color: rgba(2255,255,255,0.9);	box-shadow: 2px 0 4px rgba(0,0,0,.1);	transform: translateX(-100%);	transition: transform .4s;	z-index: 90;}.nav.active {	transform: translateX(0);}.nav-list {	margin: 0;	padding: 50px 0 0;	list-style: none;}.nav-item {	padding: 0 20px;}.nav-link {	font-size: 1.4rem;	display: block;	padding: 15px 0;	color: #333;	text-decoration: none;	border-bottom: 1px solid #eee;}#download h2{	background: #000;	color: #00b7a4;	font-size: 2.6rem;	font-weight: bold;	margin: 0 auto 30px;	max-width: 800px;	width: 90%;	padding: 10px;	text-align: center;}#download .lead{	border: solid #ddd 1px;	margin: 0 auto 30px;	max-width: 800px;	padding: 20px;	width: 90%;}#download .lead p{	font-size: 1.4rem;}#download .form{	background: rgba(255,255,255,0.8);	border: solid #fff 1px;	margin: 0 auto 30px;	max-width: 1100px;	padding: 0 20px;	width: 90%;}@media screen and (min-width:768px) {#thanks footer{	bottom: 0;	position: absolute;	width: 100%;}}