@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&display=swap');

:root {
/*
	--main-color: #fa5a00;
*/
	--main-color-rgb: 250, 90, 0;
	--sub-color: #F27121;
	--point-color: #E94057;
	--bg-color: #eceef2;
	--bg-color-rgb: 255, 255, 255;
	--bg-sub-color: #f9fafa;
	--text-color: #000000;
	--text-color-rgb: 0, 0, 0;
	--font: "Noto Sans JP", sans-serif;
	--font-regular: 400;
	--font-bold: 900;
	--eng-font: "Oswald", sans-serif;
	--eng-font-regular: 400;
	--eng-font-bold: 900;
}

* {
	box-sizing: border-box;
}
html {
	font-size: calc(100vw * 16 / 1440);
}
body {
	line-height: 1.5;
	color: var(--text-color);
	font-family: var(--font);
	font-weight: var(--font-regular);
	background-color: var(--bg-color);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
}
a {
	text-decoration: none;
	color: var(--main-color);
}
a:hover {
	opacity: 0.65;
}
ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
}
hr {
	margin: 1.5rem 0;
	border-bottom: 0;
	border-top: 0.0625rem solid rgba(var(--text-color-rgb),0.3);
}
section {
	margin: 3.75rem auto;
}
h1,
h2,
h3,
h4,
h5,
h6,
strong,
b {
	font-weight: var(--font-bold);
}
.spOnly {
	display: none;
}
.mainDiv {
	position: relative;
	width: 70rem;
}
.inner {
	max-width: 47.5rem;
	padding: 0 1.5625rem;
	box-sizing: content-box;
	margin: auto;
}
.formArea {
	position: fixed;
	width: 20rem;
	top: 0;
	right: 0;
	bottom: 0;
	padding: 5.625rem 1.25rem 1.5625rem;
	box-shadow: 0 0 0.25rem 0 rgba(0, 15, 40, 0.3);
	background-color: #e8eaec;
	background-image: url(../images/form-bg.jpg);
	background-size: cover;
}
.formTagline {
	position: absolute;
	top: 0;
    left: 0;
	right: 0;
	font-family: Oswald;
	font-size: 2.55rem;
	font-weight: bold;
	white-space: nowrap;
	line-height: 1;
	display: flex;
	align-items: baseline;
	gap: 0.5rem;
	transform: translate(0.1875rem, -0.5625rem);
}
.formTagline strong {
	font-size: 2.7rem;
	color: #fa5a00;
}
.formTagline i {
	font-style: normal;
    font-size: 2.7rem;
}
.formArea .sectionLabel {
	margin-bottom: 0.375rem;
}
.formArea .sectionTitle {
	font-size: 1.625rem;
}
.formLead {
	margin: 1.5rem auto 1.5rem;
	font-family: NotoSansJP;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.44;
	letter-spacing: 0.04rem;
	padding-left: 0.04rem;
	text-align: center;
	position: relative;
}
.formLead::before {
	content: "";
	display: block;
	width: 4.375rem;
	height: 0.125rem;
	margin: auto;
	background-color: #fa5a00;
	position: absolute;
	top: -0.625rem;
	left: 0;
	right: 0;
}
.contactForm {
	border-top: 0.0625rem solid #d6d8d9;
}
.contactForm label {
	display: flex;
	align-items: center;
	padding: 0.625rem 0;
	border-bottom: 0.0625rem solid #d6d8d9;
}
.contactForm label > span {
	flex-basis: 5em;
	flex-shrink: 0;
	font-size: 0.8125rem;
	font-weight: bold;
	letter-spacing: 0.0325rem;
	line-height: 1.25;
}
.contactForm label > span b {
	color: #fa5a00;
}
.contactForm input[type="text"],
.contactForm input[type="tel"],
.contactForm input[type="email"],
.contactForm textarea {
	appearance: none;
	width: 100%;
	border-radius: 0.25rem;
	border: 0.0625rem solid #c8cdd0;
	padding: 0.6em 0.75em;
	line-height: 1.5;
	font-size: 0.875rem;
}
.contactForm textarea {
	height: 7.5rem;
}
.contactForm input[type="text"]::placeholder,
.contactForm input[type="tel"]::placeholder,
.contactForm input[type="email"]::placeholder,
.contactForm textarea::placeholder {
	color: #a0a0a0;
	opacity: 1;
}

.formSubmit {
	display: block;
	width: 14.375rem;
	line-height: 3.75rem;
	margin: 1.25rem auto 0;
	border-radius: 99em;
	box-shadow: 0.1313rem 0.1313rem 0.125rem 0 rgba(0, 15, 40, 0.15), inset 0 0 0.1875rem 0 rgba(0, 0, 0, 0.4);
	background-image: linear-gradient(to right, #fa5a00, #ffa000);
	text-shadow: 0.0437rem 0.0437rem 0.3688rem rgba(0, 15, 40, 0.15);
	font-size: 1.3125rem;
	font-weight: bold;
	letter-spacing: 0.1575rem;
	text-align: center;
	color: #fff;
	padding: 0 0 0 0.1575rem;
	border: 0;
	position: relative;
	transition: 0.3s; 
}

.formSubmit:hover {
    cursor: pointer;
    opacity: 0.8;
}

.formSubmit::after {
	content: "";
	position: absolute;
	width: 1.25rem;
	height: 1.25rem;
	margin: auto;
	right: 1.25rem;
	top: 0;
	bottom: 0;
	background-image: url(../images/icon-arrow-right.png);
	background-size: contain;
}
.header {
	position: absolute;
	top: 1.25rem;
	left: 1.25rem;
	right: 3.75rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	z-index:10000;
}
.headerLogo {
	margin: 0;
	flex-basis: 8.125rem;
}
.globalNav {
	padding: 0.9375rem 2.1875rem 0.9375rem 1.5625rem;
	border-radius: 99em;
	box-shadow: 0 0 0.25rem 0 rgba(0, 15, 40, 0.3);
	background-color: #fff;
}
.globalNavToggle {
	display: none;
}
.globalNav ul {
	display: flex;
	gap: 1.25rem;
}
.globalNav a {
	display: block;
	padding-left: 2em;
	font-size: 0.875rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0.035rem;
	color: inherit;
	background-image: url(../images/icon-arrow.png);
	background-repeat: no-repeat;
	background-size: contain;
}
.mainVisual {
	margin-right: 50px;
	background-image: url(../images/mv-bg-pc.jpg);
	background-size: cover;
}
.mainVisual {
	margin: 0;
	background-image: url(../images/mv-bg-pc.jpg);
	background-size: cover;
	padding-top: 7.5rem;
	padding-left: 5rem;
	padding-bottom: 10.625rem;
	box-shadow: 0rem 0.0625rem 0.3688rem 0.0063rem rgba(0, 15, 40, 0.15);
	background-color: #737373;
    background-position: 80% center;
}
.leadCopy i {
	font-weight: 700;
	font-style: normal;
	font-size: 0.8em;
}
.leadCopySub {
	font-weight: 900;
	font-size: 1.5rem;
	display: block;
}
.leadCopyMain {
	font-size: 2.125rem;
	font-weight: 900;
	margin: 0;
	line-height: 1.4;
}
.leadCopyMain .highlight {
	background-image: linear-gradient(to top, #f6f050 0.23529412em, transparent 0.23529412em);
	text-shadow: 0.0625rem 0.0625rem 0.125rem rgba(255, 255, 255, 0.8);

}
.highlight {
	color: #fa5a00;
}
.leadSub {
	margin: 1rem 0 1.75rem;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.86;
	letter-spacing: 0.035rem;
}
.badges {
	width: 28.75rem;
	display: block;
}
.solveSection {
	margin: 0;
	padding-top: 10rem;
	position: relative;
	background-image: url(../images/logo-mark.png);
	background-repeat: no-repeat;
	background-size: 20.3125rem auto;
	background-position: top -1.25rem right 1.875rem;
}
.aboutServiceFloat {
	background-image: url(../images/about-bg-pc.png);
	background-size: cover;
	width: 48.75rem;
	padding: 4.375rem 2.5rem 2.5rem;
	box-shadow: 0.0437rem 0.0437rem 0.3688rem 0.0063rem rgba(0, 15, 40, 0.15);
	position: absolute;
	top: 0;
	left: 0;
	transform: translateY(-8.75rem);
	border-radius: 0 0.75rem 0.75rem 0;
	color: #fff;
}
.aboutServiceFloat h2 {
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: 0.065rem;
	margin: 0 0 0.25rem;
}
.contents p {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.035rem;
}
.contents p:first-child {
	margin-top: 0;
}
.contents p:last-child {
	margin-bottom: 0;
}
.sectionLabel {
	margin: 0 auto 1rem;
	font-family: var(--eng-font);
	font-size: 1.125rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.045rem;
	text-indent: 0.045rem;
	text-align: center;
	color: #fa5a00;
}
.sectionTitleSub {
	margin: auto;
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.0525rem;
	text-indent: 0.0525rem;
	text-align: center;
}
.sectionTitle {
	margin: auto;
	font-size: 2.125rem;
	font-weight: 900;
	line-height: 1.35;
	letter-spacing: 0.085rem;
	text-indent: 0.085rem;
	text-align: center;
}
.solveItems {
	display: flex;
	gap: 1.25rem;
	margin-top: 1.25rem;
}
.solveItem {
	flex: 1;
	background-size: contain;
	background-repeat: no-repeat;
	padding-top: 10.625rem;
	text-align: center;
	height: 20rem;
}
.solveItem:nth-child(1) {
	background-image: url(../images/solve-item1-pc.png);
}
.solveItem:nth-child(2) {
	background-image: url(../images/solve-item2-pc.png);
}
.solveItem:nth-child(3) {
	background-image: url(../images/solve-item3-pc.png);
}
.solveItem h3 {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
	padding-left: 0.0213rem;
}
.solveItem p {
	margin: 0.625rem 0 0;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
}
.conceptSection {
	background-image: url(../images/concept-bg-pc.jpg);
	background-size: cover;
	padding-top: 9.6875rem;
	margin-top: -7.5rem;
}
.conceptSection .sectionLabel,
.conceptSection .sectionTitle,
.conceptSection .sectionTitleSub,
.conceptSection .contents {
	color: #fff;
}
.conceptSection .sectionTitle .highlight {
	color: #f6f050;
}
.conceptSection .sectionTitleSub::after {
	content: "";
	display: block;
	height: 0.125rem;
	width: 5.625rem;
	background-color: #fff;
	margin: 1rem auto;
}
.conceptSection .contents {
	text-align: center;
	padding-left: 0.035rem;
}
.recommendNote {
	margin: 1.875rem auto 0.3125rem;
	width: 28.125rem;
}
.recommendBoxes {
	display: flex;
	gap: 0.75rem;
}
.recommendBox {
	flex: 1;
	padding: 1.125rem 0;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	text-align: center;
}
.recommendBox h3 {
	margin: 0 0 0.75rem;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
	padding-left: 0.0213rem;
}
.recommendBox p {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
}
.fitSmallBusiness {
	width: 66.25rem;
	margin: -2.5rem auto 0;
	padding: 1.25rem;
	border-radius: 0.875rem;
	background-color: #145078;
	transform: translateY(6.25rem);
}
.fitHeading {
	margin: 0 0 1.125rem;
	font-size: 1.3125rem;
	font-weight: bold;
	letter-spacing: 0.0525rem;
	padding-left: 0.0525rem;
	text-align: center;
	color: #fff;
}
.fitHeading .highlight {
	color: #f6f050;
}
.fitPoints {
	display: flex;
	gap: 0.9375rem;
	margin: 0 1.25rem;
	position: relative;
}
.fitPointsImage1,
.fitPointsImage2 {
	position: absolute;
	bottom: 80%;
}
.fitPointsImage1 {
	width: 5rem;
	left: 1.375rem;
}
.fitPointsImage2 {
	width: 4.875rem;
	right: 1.75rem;
}
.fitBox {
	flex: 1;
	padding: 1rem 0.5rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	text-align: center;
	position: relative;
}
.fitBox h3 {
	margin: 0 0 0.5rem;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
	padding-left: 0.0213rem;
}
.fitBox p {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
}
.featureIntro {
	margin-top: 10rem;
}
.featureIntroContainer {
	display: flex;
	align-items: self-start;
	justify-content: space-between;
	position: relative;
}
.featureHeader .sectionLabel {
	text-align: left;
}
.featureHeader .sectionTitle {
	text-align: left;
}
.featureHeader img {
	position: absolute;
	width: 13.75rem;
	top: 9.375rem;
}
.featureTableDiv {
	flex-basis: 32.5rem;
	padding: 0.625rem 0.3125rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	position: relative;
}
.featureTableBg {
	width: 7.5rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	position: absolute;
	top: 0.625rem;
	bottom: 0.625rem;
}
.featureTableBg.left {
	background-color: #eceef2;
	right: 16.875rem;
}
.featureTableBg.middle {
    background-color: #ff7800;
	right: 8.75rem;
}
.featureTableBg.right {
	background-color: #eceef2;
	right: 0.625rem;
}
.featureTable {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	position: relative;
}
.featureTable thead th:first-child {
	width: 7.5rem;
}
.featureTable thead th {
	padding: 0.3125rem 0;
}
.featureTable thead th span {
	width: 6.875rem;
	height: 2.5rem;
	border-radius: 0.375rem;
	box-shadow: 0 0 0.25rem 0 rgba(0, 15, 40, 0.15);
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto;
}
.logo {
	margin: auto;
}
.logo.excel {
	height: 1.875rem;
}
.logo.bizcatch {
	height: 1.875rem;
}
.featureTable tbody th,
.featureTable tbody td {
	border-top: 0.0625rem solid #dadee4;
}
.featureTable tbody th {
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 1.21;
	letter-spacing: 0.0175rem;
	padding: 0.9375rem 0 0.9375rem 0.0175rem;
}
.mark {
	margin: auto;
}
.mark.maru,
.mark.sankaku {
	height: 1.875rem;
}
.mark.batsu {
	height: 1.6875rem;
}
.featureBottom {
	padding: 1.25rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #343434;
	background-image: url(../images/feature-bottom-bg.jpg);
	background-size: cover;
	position: relative;
	margin-top: 1.25rem;
}
.featureBottomMain {
	display: flex;
	gap: 0.9375rem;
}
.featureBlock {
	padding: 1rem 0.5rem 1.25rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	text-align: center;
	flex: 1;
}
.featureBlock h3 {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
	padding-left: 0.0213rem;
}
.featureBlock p {
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
	margin: 0.5rem 0 0;
}
.featureBottomSub {
	display: flex;
	margin-top: 0.9375rem;
	gap: 0.375rem;
}
.featureBottomSub .tag {
	flex: 1;
	line-height: 3.75rem;
	border-radius: 0.375rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	text-align: center;
	font-size: 1.0625rem;
	font-weight: bold;
	letter-spacing: 0.0213rem;
	padding-left: 0.0213rem;
}
.priceSection {
	padding: 3.75rem;
	box-shadow: 0 0 0.375rem 0 rgba(0, 15, 40, 0.1);
	background-color: #fff;
}
.priceSection .sectionLabel {
	margin-bottom: 0.375rem;
}

.note {
    font-size: 0.9rem;
    margin-top: 4px;
}

.priceBoxes {
	margin: 1.25rem 0;
	display: flex;
	gap: 1.25rem;
}
.priceMain {
	flex-basis: 31.25rem;
	padding: 0.625rem;
	border-radius: 0.5625rem;
	border: solid 0.0625rem #eee0cc;
	background-color: #fff2e0;
	display: flex;
	align-items: center;
}
.priceAmount {
	text-align: center;
	margin: 0;
	flex: 1;
}
.priceAmount span {
	font-size: 1.3125rem;
	font-weight: bold;
	display: block;
}
.priceAmount strong {
	font-family: Oswald;
	font-size: 3.875rem;
	font-weight: bold;
	color: #fa5a00;
	line-height: 1;
}
.priceAmount i {
	font-size: 2.125rem;
	font-weight: 900;
	font-style: normal;
}
.priceFeatures {
	flex-basis: 15.625rem;
}
.checkList li {
	height: 3.125rem;
	padding: 0.3125rem 0.625rem 0.3125rem 3.125rem;
	border-radius: 0.375rem;
	box-shadow: 0 0 0.25rem 0 rgba(0, 15, 40, 0.15);
	background-color: #fff;
	background-image: url(../images/icon-check.png);
	background-repeat: no-repeat;
	background-size: 1.875rem;
	background-position: left 0.625rem center;
	display: flex;
	align-items: center;
}
.checkList li + li {
	margin-top: 0.3125rem;
}
.checkList li p {
	margin: 0;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 1.29;
	letter-spacing: 0.0175rem;
}
.priceOption {
	flex: 1;
	padding: 0.625rem;
	border-radius: 0.5625rem;
	border: solid 0.0625rem #d4d8e0;
	background-color: #eceef2;
}
.optionLabelEn {
	margin: 0;
	font-family: Oswald;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 1.36;
	letter-spacing: 0.035rem;
	text-indent: 0.035rem;
	text-align: center;
	color: #fa5a00;
}
.optionLabel {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 800;
	letter-spacing: 0.045rem;
	text-indent: 0.045rem;
	text-align: center;
}
.optionList {
	margin-top: 0.9375rem;
}
.trialBox {
	background-image: url(../images/step-bg-pc.png);
	background-size: contain;
	background-repeat: no-repeat;
	padding: 3.25rem 0 0;
}
.trialHeading {
	font-size: 1.625rem;
	font-weight: bold;
	letter-spacing: 0.065rem;
	padding-left: 0.065rem;
	text-align: center;
	color: #fff;
	margin: 0;
}
.trialHeading .highlight {
	color: #f6f050;
}
.trialSteps {
	display: flex;
	padding: 0 1.25rem;
}
.trialStep {
	flex: 1;
	display: flex;
	padding: 1.25rem;
	gap: 2.5rem;
}
.stepLabel {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 800;
	line-height: 1.23;
	text-align: right;
	flex-shrink: 0;
}
.stepLabel strong {
	display: block;
	font-family: Oswald;
	font-size: 2.5625rem;
	font-weight: bold;
	color: #fa5a00;
	line-height: 1.2;
}
.stepTitle {
	margin: 0 0 0.5rem;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
}
.stepText {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
}
.faqSection .sectionLabel {
	margin-bottom: 0.375rem;
}
.faqItems {
	margin-top: 1.25rem;
}
.faqItem {
	margin-top: 0.625rem;
	padding: 1.25rem;
	border-radius: 0.5625rem;
	box-shadow: 0 0 0.125rem 0 rgba(0, 15, 40, 0.2);
	background-color: #fff;
	display: flex;
}
.faqQNo {
	flex-basis: 5.625rem;
	flex-shrink: 0;
	font-family: Oswald;
	font-size: 1.9375rem;
	font-weight: bold;
}
.faqQNo i {
	font-size: 2.5625rem;
	font-style: normal;
	color: #fa5a00;
	line-height: 1;
	margin-left: 0.25rem;
}
.faqQ {
	margin: 0 0 0.25rem;
	font-size: 1.0625rem;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.0213rem;
}
.faqA {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.38;
}

.sctaSection {
	margin: 0;
	padding-top: 7rem;
	position: relative;
	background-image: url(../images/logo-mark.png);
	background-repeat: no-repeat;
	background-size: 20.3125rem auto;
	background-position: top -1.25rem right 1.875rem;
	font-size: 0.9125rem;
	padding-bottom: 5rem;
}

.sctaTitle {
	margin: auto;
	font-size: 1.125rem;
	margin-bottom: 0.775rem;
}

.sctaInner {
	max-width: 47.5rem;
	padding: 0 1.5625rem;
	box-sizing: content-box;
	margin: auto;
}
.sctaInner th{
	font-weight:normal;
	min-width: 10.5rem;
	text-align:left;
}
.sctaInner th,td{
	padding: 1.15rem;
}


.footer {
	padding: 0.625rem 0;
	background-color: #fa5a00;
}
.footerDiv {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color:#FFF;
}
.footerCopyright {
	font-size: 0.75rem;
	letter-spacing: 0.045rem;
	text-align: right;
	color: #fff;
}
.thanksSection {
    min-height: 65vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.thanksSection .contents {
	text-align: center;
	margin: 1rem 0 0;
	padding: 2rem;
	background-color: #fff;
	border-radius: 0.5rem;
}
.thanksSection .contents a {
	text-decoration: underline;
}
.thanks_html, .thanks_body {
	height: 100%;
}
.thanks_body {
	display: flex;
	flex-direction: column;
}
.thanks_main {
	flex: 1;
}

.footer_trial {
	padding: 1rem;
    background-color: #fa5a00;
}
input[name="name2"] {
  margin-left: 8px;
}
@media screen and (max-width: 632px) {
	html {
		font-size: calc(100vw * 16 / 375);
	}
	section {
		margin: 2.5rem auto;
	}
	.spOnly {
		display: block;
	}
	.pcOnly {
		display: none;
	}
	.inner {
		padding: 0 0.9375rem;
	}
	.mainDiv {
		width: auto;
		overflow: hidden;
	}
	.overlay {
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.5);
		z-index: 1;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.25s ease;
		pointer-events: none;
	}
	body.formOpen,
	body.isOpen {
		overflow-y: hidden;
	}
	body.isOpen .overlay,
	body.formOpen .overlay {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.formArea {
		width: 100%;
		padding: 4.25rem 0.625rem 1.875rem;
		top: auto;
		transition: transform 0.25s ease;
		transform: translateY(calc(100% - 10rem));
		z-index: 3;
	}
	body.formOpen .formArea {
		transform: translateY(0);
		overflow-y: scroll;
		overflow-x: hidden;
		max-height: 100%;
	}
	.formTagline {
		background-image: url(../images/icon-toggle-plus.png);
		background-size: 4rem 4rem;;
		background-repeat: no-repeat;
		background-position: left center;
		padding-left: 4rem;
		left: 0;
		font-size: 2.6rem;
		transform: translate(0, 0);
		gap: 0.2rem;
        margin: 0;
        height: 4rem;
        align-items: center;
        justify-content: center;
	}
    body.formOpen .formTagline {
        background-image: url(../images/icon-toggle-minus.png);
    }
	.formTagline strong {
		font-size: 2.7rem;
	}
    .formTagline i {
		font-size: 2.6rem;
	}

	.formArea .sectionLabel {
		font-size: 0.8125rem;
		margin-bottom: 0;
	}
	.formArea .sectionTitle {
		font-size: 1.5rem;
	}
	.formLead {
		font-size: 0.8125rem;
		margin: 1.25rem auto 0.9375rem;
	}
	.contactForm label {
		padding: 0.3125rem 0;
	}
	.contactForm input[type="text"],
	.contactForm input[type="tel"],
	.contactForm input[type="email"],
	.contactForm textarea {
		margin: 0;
		padding: 0.5em;
		font-size: 1rem;
	}
	.contactForm textarea {
		height: 5rem;
	}
	.formSubmit {
		font-size: 1.125rem;
		line-height: 2.5;
		letter-spacing: 0.09rem;
		padding: 0 0 0 0.09rem;
	}
	.header {
		top: 0;
		left: 0;
		right: 0;
		display: block;
	}
	.headerLogo {
		width: 6.5rem;
		margin: 0.9375rem;
	}
	.globalNav {
		position: absolute;
		top: 0;
		right: 0;
		border-radius: 0;
		padding: 0;
		box-shadow: none;
		width: 9.375rem;
		background-color: transparent;
		z-index: 2;
	}
	.globalNav ul {
		max-height: 0;
		overflow: hidden;
		background-color: #fff;
	}
	.globalNavToggle {
		display: block;
		line-height: 2.5rem;
		background-color: #fa5a00;
		font-family: Oswald;
		font-size: 1.125rem;
		font-weight: bold;
		letter-spacing: 0.045rem;
		text-indent: 0.045rem;
		text-align: center;
		color: #fff;
		background-image: url(../images/icon-toggle-plus.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: left;
		padding-left: 2.5rem;
	}
	.globalNavToggle::before {
		content: "";
		width: 0.0625rem;
		height: 2.5rem;
		background-color: #dc3c00;
		position: absolute;
		left: 2.5rem;
	}
	.globalNav ul {
		box-shadow: 0 0 0.25rem 0 rgba(0, 15, 40, 0.3);
		flex-direction: column;
		gap: 0;
		border-radius: 0 0 0 0.625rem;
	}
	.globalNav ul li + li {
		border-top: 0.0625rem solid #e8ecf0;
	}
	.globalNav a {
		line-height: 2.5rem;
		background-size: 1.25rem;
		background-position: left 0.625rem center;
		padding-left: 2.25rem;
		letter-spacing: 0;
	}
	body.isOpen .globalNavToggle {
		background-image: url(../images/icon-toggle-minus.png);
	}
	body.isOpen .globalNav ul {
		transition: max-height 0.25s ease;
		max-height: 100vh;
	}
	.mainVisual {
		background-image: url(../images/mv-bg-sp.jpg);
		padding-top: 10.8125rem;
		padding-left: 0;
		padding-bottom: 7.1875rem;
	}
	.leadCopy {
		margin-left: 0.9375rem;
	}
	.leadCopySub {
		font-size: 1.1875rem;
	}
	.leadCopyMain {
		font-size: 1.9375rem;
		line-height: 1.3;
	}
	.leadSub {
		margin: 0.75rem 0.9375rem 1.125rem;
		font-size: 0.8125rem;
		line-height: 1.62;
		letter-spacing: 0;
	}
	.badges {
		width: 20rem;
	}
	.solveSection {
		padding-top: 11.5rem;
		background-size: 16.875rem auto;
		background-position: top -3.75rem right -3.75rem;
	}
	.aboutServiceFloat {
		background-image: url(../images/about-bg-sp.png);
		width: 22.1875rem;
		padding: 3rem 0.875rem 1.75rem;
		transform: translateY(-6.25rem);
	}
	.aboutServiceFloat h2 {
		font-size: 1.5rem;
		letter-spacing: 0.0525rem;
	}
	.contents p {
		font-size: 0.8125rem;
		line-height: 1.77;
		letter-spacing: 0;
	}
	.sectionLabel {
		margin-bottom: 0.625rem;
		font-size: 1rem;
		letter-spacing: 0.04rem;
		text-indent: 0.04rem;
	}
	.sectionTitleSub {
		font-size: 1.0625rem;
		letter-spacing: 0.0475rem;
		text-indent: 0.0475rem;
	}
	.sectionTitle {
		font-size: 1.75rem;
		letter-spacing: 0.07rem;
		text-indent: 0.07rem;
	}
	.solveItems {
		flex-direction: column;
		gap: 0.25rem;
		margin-top: 0.5rem;
	}
	.solveItem {
		padding-top: 4.625rem;
		padding-left: 9.0625rem;
		text-align: left;
		height: auto;
		flex-basis: 12.875rem;
	}
	.solveItem:nth-child(1) {
		background-image: url(../images/solve-item1-sp.png);
	}
	.solveItem:nth-child(2) {
		background-image: url(../images/solve-item2-sp.png);
	}
	.solveItem:nth-child(3) {
		background-image: url(../images/solve-item3-sp.png);
	}
	.solveItem h3 {
		font-size: 0.9375rem;
	}
	.solveItem p {
		font-size: 0.75rem;
		margin-top: 0.25rem;
	}
	.conceptSection .sectionTitleSub {
		margin-top: 0.375rem;
	}
	.conceptSection .contents {
		text-align: left;
	}
	.conceptSection .contents br {
		display: contents;
	}
	.recommendNote {
		width: 20.3125rem;
	}
	.recommendBoxes {
		flex-direction: column;
		gap: 0.3125rem;
	}
	.recommendBox {
		padding: 1rem 0;
	}
	.recommendBox h3 {
		margin-bottom: 0.375rem;
		font-size: 1rem;
		letter-spacing: 0.02rem;
		padding-left: 0.02rem;
	}
	.recommendBox h3 br {
		display: contents;
	}
	.fitSmallBusiness {
		width: 22.8125rem;
		margin: -18.125rem auto 0;
		padding: 1.25rem 0.625rem 0.625rem;
		transform: translateY(20.625rem);
	}
	.fitSmallBusiness .inner {
		padding: 0;
	}
	.fitHeading {
		margin-bottom: 0.9375rem;
		font-size: 1.1875rem;
		line-height: 1.37;
		letter-spacing: 0.0475rem;
		padding-left: 0.0475rem;
	}
	.fitPointsImage1,
	.fitPointsImage2 {
		bottom: 95%;
	}
	.fitPointsImage1 {
		width: 3.5rem;
		left: 0.3125rem;
	}
	.fitPointsImage2 {
		width: 3.4375rem;
		right: 0.25rem;
	}
	.fitPoints {
		flex-direction: column;
		gap: 0.3125rem;
		margin: 0;
	}
	.fitBox h3 {
		margin-bottom: 0.375rem;
		font-size: 1rem;
		letter-spacing: 0.02rem;
		padding-left: 0.02rem;
	}
	.featureIntro {
		margin-top: 23.125rem;
	}
	.featureIntroContainer {
		flex-direction: column;
		align-items: center;
		gap: 13.125rem;
	}
	.featureHeader .sectionLabel {
		text-align: center;
	}
	.featureHeader .sectionTitle {
		text-align: center;
	}
	.featureHeader img {
		width: 100%;
		top: 5rem;
		left: 0;
	}
	.featureTableDiv {
		flex-basis: auto;
		padding: 0.3125rem 0;
	}
	.featureTableBg {
		width: 5.3125rem;
		top: 0.3125rem;
		bottom: 0.3125rem;
	}
	.featureTableBg.left {
		right: 0.3125rem;
	}
	.featureTableBg.middle {
		right: 5.9375rem;
	}
	.featureTableBg.right {
		right: 11.5625rem;
	}
	.featureTable thead th:first-child {
		width: 4.6875rem;
	}
	.featureTable thead th span {
		width: 4.6875rem;
		height: 1.875rem;
		font-size: 0.6875rem;
	}
	.logo.excel,
	.logo.bizcatch {
		height: 1.25rem;
	}
	.featureTable tbody th {
		font-size: 0.6875rem;
	}
	.featureBottom {
		padding: 0.625rem;
	}
	.featureBottomMain {
		flex-direction: column;
		gap: 0.3125rem;
	}
	.featureBlock {
		padding: 1rem;
	}
	.featureBlock h3 {
		font-size: 1rem;
		letter-spacing: 0.02rem;
		padding-left: 0.02rem;
	}
	.featureBottomSub {
		flex-wrap: wrap;
		gap: 0.3125rem;
		margin-top: 0.3125rem;
	}
	.featureBottomSub .tag {
		flex-basis: calc(33.333% - 0.3125rem*2/3);
		font-size: 0.9375rem;
		line-height: 2.8125rem;
	}
	.priceSection {
		padding: 2.5rem 0;
	}
	.priceBoxes {
		flex-direction: column;
		gap: 0.625rem;
	}
	.priceMain {
		flex-basis: auto;
		flex-direction: column;
		gap: 0.625rem;
	}
	.priceAmount span {
		display: inline-block;
		writing-mode: vertical-lr;
		line-height: 1;
		margin-right: 0.5rem;
	}
	.priceFeatures {
		flex-basis: auto;
		width: 100%;
	}
	.trialBox {
		background-image: url(../images/step-bg-sp.png);
		padding-top: 3.8125rem;
	}
	.trialHeading {
		font-size: 1.125rem;
	}
	.trialSteps {
		flex-direction: column;
		padding: 0 2rem;
	}
	.trialStep {
		padding: 0.75rem 0 1.3125rem;
		gap: 1.5625rem;
		align-items: flex-start;
	}
	.stepLabel {
		writing-mode: vertical-rl;
		font-size: 0.75rem;
		position: relative;
	}
	.stepLabel strong {
		writing-mode: lr;
		position: absolute;
		left: 0;
		bottom: 0;
		line-height: 1;
		transform: translate(-2%,110%);
		font-size: 1.9375rem;
	}
	.stepText {
		font-size: 0.75rem;
	}
	.stepText br {
		display: contents;
	}
	.faqItem {
		margin-top: 0.3125rem;
		padding: 0.9375rem;
	}
	.faqQNo {
		flex-basis: 3.4375rem;
		font-size: 1.3125rem;
	}
	.faqQNo i {
		font-size: 1.8125rem;
		margin-left: 0.125rem;
	}
	.faqQ {
		font-size: 1rem;
	}
	.footer {
		padding-bottom: 5rem;
	}
    .footer_trial {
		padding-bottom: 11rem;
        background-color: #fa5a00;
	}
	.footerDiv {
		flex-direction: column;
		gap: 0.9375rem;
	}
	.footerCompany {
		background-size: 1.25rem;
		background-position: right 0.625rem center;
		padding-right: 0;
	}
	.mark {
		width: 2rem;
	}
}