@charset "UTF-8";/*----------------------------------------------------------更新日：2024年8月29日=PC(960以上)=PC & タブレット(960以下)=スマホ(768px以下)-------------------------------------------------------------*//*==================================================================  Top page===================================================================*//* .breadcrumbsbreadcrumbs------------------------------------------------------*/.breadcrumbs,.breadcrumbs a {	white-space: nowrap;	color: rgba(255,255,255,0.3);}.breadcrumbs .current-item {	color: rgba(255,255,255,0.3);}/* #keyv------------------------------------------------------*/#keyv .box {	display: flex;	align-items: center;	height: 650px;	color: #FFF;}#keyv .box.moment {	background: url("../img/top/keyv_moment_bg.webp") no-repeat center top;	background-size:cover;}#keyv .box.owas {	background: url("../img/top/keyv_owas_bg.webp") no-repeat center top;	background-size:cover;}#keyv .mainTxt {	width: 100%;	max-width:960px;	margin: 0 auto;	padding-top: 100px;	position: relative;}#keyv .mainTxt h1 {	margin-bottom: 2.5em;	text-shadow: 0 2px 4px rgba(0,0,0,0.6);	line-height: 1.6;	letter-spacing: 0.02em;	font-size: 2.1em;	font-weight: bold;	font-style: italic;}#keyv .mainTxt h1 strong {	font-size: 1.25em;	color: #efed21;}#keyv .mainTxt h1 span {	font-size: 0.8em;}#keyv .logoArea {	width: 350px;}#keyv .logoArea h2 {	position: relative;}#keyv .logoArea h2 .reg {	position: absolute;	right: 0;	bottom: 0;	transform: translateX(170%);	font-weight: normal;}#keyv .logoArea p {	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	height: 100px;	margin-top: 1em;	line-height: 1.4;	text-align: center;	font-size: 2em;	font-weight: bold;	color: #FFF;}#keyv .box.moment .logoArea p {	background: linear-gradient(to bottom,  #f06867 0%,#ff525c 100%);}#keyv .box.owas .logoArea p {	background: linear-gradient(to right,  #1dd5e6 0%,#46aef7 100%);}#keyv .logoArea p span {	font-size: 0.45em;	font-weight: normal;}#keyv .logoArea2 {	width: 400px;}#keyv .logoArea2 h2 {	position: relative;}#keyv .logoArea2 h2 .reg {	position: absolute;	right: 0;	bottom: 0;	transform: translateX(170%);	font-weight: normal;}#keyv .logoArea2 ul {	display: flex;	justify-content: space-between;	list-style: none;	padding: 0;}#keyv .logoArea2 ul li {	width: 49%;}#keyv .logoArea2 p {	display: flex;	flex-direction: column;	justify-content: center;	align-items: center;	height: 80px;	margin-top: 0;	line-height: 1.4;	text-align: center;	font-size: 1.4em;	font-weight: bold;	color: #FFF;}#keyv .logoArea2 .LabOwas  p {	background: linear-gradient(to right,  #1dd5e6 0%,#46aef7 100%);}#keyv .logoArea2 .LabMoment p {	background: linear-gradient(to bottom,  #f06867 0%,#ff525c 100%);}#keyv .logoArea2 p span {	font-size: 0.55em;	font-weight: normal;}#keyv .jampLink .btn{	margin: 1.5em auto;}#keyv .jampLink .btn:after{	transform: rotate(135deg);	top: 1em;	width: 0.6em;	height: 0.6em;}@media only screen and (max-width:960px) {	#keyv .mainTxt {		padding-left: 2em;	}}@media only screen and (max-width:768px) {	#keyv .box {		align-items: flex-end;		height: 110vw;		padding-bottom: 1em;	}	#keyv .mainTxt {		padding-top: 0;	}	#keyv .mainTxt h1 {		margin-bottom: 1.5em;		font-size: 1.4em;	}	#keyv .logoArea {		width:65%;	}	#keyv .logoArea p {		height: 18vw;		margin-top: 1em;		font-size: 1.4em;	}	#keyv .logoArea p span {		font-size: 0.6em;	}	#keyv .logoArea2 {		width:70%;	}	#keyv .logoArea2 p {		height: 16vw;		font-size: 1em;	}	#keyv .logoArea2 p span {		font-size: 0.6em;	}	#keyv .jampLink .btn{		min-width: 70vw;		padding: 0 1em;	}}/*セール用ボタン*/#keyv .saleBan{	width: 160px;	position: absolute;	right: -5%;  top: 10%;	z-index: 15;	opacity: 0;}#keyv .saleBan a:hover{	opacity: 0.8;}.saleBan {  animation: zoomIn 0.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;	animation-delay: 0.5s;}@keyframes zoomIn {  0% {    transform: scale(0.5);    opacity: 0;  }  100% {    opacity: 1;    transform: scale(1);  }}@media only screen and (max-width:768px) {	#keyv .saleBan{		width: 20vw;		left: 4%;		top: -27%;	}}/* .sec------------------------------------------------------*/.sec .topTxt {	text-align: center;	margin-bottom: 2em;	padding: 0 4em;}@media only screen and (max-width:768px) {	.sec .topTxt {		padding: 0;		text-align: left;	}}/* #about------------------------------------------------------*/#about{	background-color: #0687a2;	padding-top: 0;}#about .topTxt span.reg {	color: #AAA;}#about .aRound{	padding: 2.5em 0 0.5em;	background-color: #FFF;	border-radius: 0px 0px 30px 30px;}#about .aArrow{	position: relative;	background-color: #0687a2;	padding: 3em 0 0 0;/*	padding:5em 1em;*/}#about .aArrow:after {	content: "";	position: absolute;	left: 50%;	top: 0px;	border-style: solid;	border-width: 30px 30px 0;	border-color: #FFF transparent transparent;	transform: translateX(-50%);}#about h3 {	color: #FFF;	font-size: 1.25em;	font-weight: 700;	margin-bottom: 0.5em;}#about .modeimg{	margin-bottom: 2em;}#about .type{	display: flex;	justify-content: space-between;	background: #FFF;	padding: 1em 2em;}#about .type dl{	width: 45%;}#about .type dt{	color: #FFF;	font-size: 1.25em;	font-weight: 700;	text-align: center;	padding: 0.4em 0;	background: #1dd5e6 linear-gradient(90deg, #1dd5e6, #46aef7);}#about .type .evalu{	text-align: center;	padding: 1em 0 0.5em;}#about .type .evalu .txt{	font-weight: 700;	line-height: 2.2;}#about .type .merit{	padding: 1em 1.5em;	border: 1px solid #46aef7;	min-height: 15em;}#about .type .merit .title{	text-align: center;	margin-bottom: 0.5em;}#about .type .merit .title span{	font-size: 1.25em;	font-weight: 700;	line-height: 1;	font-feature-settings: "palt";	background: linear-gradient(90deg, #1dd5e6 20%, #46aef7 80%);	-webkit-background-clip: text;	-webkit-text-fill-color: transparent;}#about .type .tMoment .merit{	border: 1px solid #ff0f47;}#about .type .tMoment dt{	background: #f06868 linear-gradient(90deg, #f06868, #ff525c);}#about .type .tMoment .merit .title span{	background: linear-gradient(90deg, #f06868 20%, #ff525c 80%);	-webkit-background-clip: text;	-webkit-text-fill-color: transparent;}#about .note{	color: #666;	font-size: 0.7em;	text-align: right;}@media only screen and (max-width:960px) {	#about {		padding-left: 0;		padding-right: 0;	}	#about .aArrow{		padding-left: 1em;		padding-right: 1em;	}	#about h3 {		font-size: 1.2em;	}}@media only screen and (max-width:768px) {	#about .topTxt br {		display: none;	}	#about .aRound{		padding:1em 1em 0.1em;		border-radius: 0px 0px 15px 15px;	}	#about .aArrow{		padding-top: 2em;	}	#about .aArrow:after {		border-width: 1em 1em 0;	}	#about .modeimg{		margin-bottom: 2em;	}	#about .type{		display: block;		padding: 1em;	}	#about .type dl{		width: auto;		margin-top: 0;	}	#about .type .merit {		min-height: 0;		padding: 1em;	}	#about .type .merit .title span{		font-size: 1em;	}	#about .type .merit .txtLinkArrow {		font-size: 0.875em;	}}/* #pvArea------------------------------------------------------*/#pvArea h2 { margin-bottom: 1em; }#pvArea .movie {	width: 100%;	max-width: 700px;	margin: 0 auto 2em;}/*#pvArea .flex {	justify-content: space-between;}#pvArea .movie {	width: 47%;	max-width: 700px;	margin: 0 auto 2em;}#pvArea h3 {	text-align: center;	font-weight: bold;	color: #55c3c7;}*/@media only screen and (max-width:768px) {	/*	#pvArea .flex { display: block; }	#pvArea .movie { width: auto; }	*/}/* #feature------------------------------------------------------*/#feature {	background: #107059 url("../img/top/feature_bg.jpg") no-repeat center center;	background-size: cover;}#feature ul{	display: flex;	justify-content: space-between;	margin-top: 2em;}#feature ul li {	width: 32%;	margin-bottom: 0;	padding: 1em 1.5em;	background-color: #FFF;}#feature ul li .pic{	padding-top: 1em;	text-align: center;}#feature ul li h3 {	color: #000;	line-height: 1.5;	font-size: 1.25em;	font-weight: 700;	margin-bottom: 0.5em;}@media only screen and (max-width:768px) {	#feature ul{		display: block;		margin-bottom: 0;	}	#feature ul li {		width: auto;		padding: 1em;	}	#feature ul li:not(:last-of-type) { margin-bottom: 1em; }	#feature ul li h3 {		font-size: 1.2em;	}}/* #screen------------------------------------------------------*/#screen .appBox{	margin-top: 3em;	display: flex;	justify-content: space-between;}#screen .appBox li{	width: 45%;}#screen .appBox h3 {	text-align: center;	padding: 0.4em 0;	background: #1dd5e6 linear-gradient(90deg, #1dd5e6, #46aef7);	color: #FFF;	font-size: 1.25em;	font-weight: 700;	margin-bottom: 0.5em;}#screen .appBox .tMoment h3 {	background: #f06868 linear-gradient(90deg, #f06868, #ff525c);}#screen .appBox dl {	display: flex;	margin-bottom: 1em;}#screen .appBox dl dd {	margin-left: 1.2em;	line-height: 1.4;	padding-top: .5em;}#screen .appBox dl dt span {	color: #FFF;	font-size: 1.7em;	font-weight: 700;	font-family: 'Roboto';	line-height: 1;	padding: .25em .45em;	display: inline-block;	background: #1dd5e6 linear-gradient(180deg, #1dd5e6, #46aef7);}#screen .appBox .tMoment dl dt span {	background: #1dd5e6 linear-gradient(180deg, #ff0f47, #ffab96);}@media only screen and (max-width:768px) {	#screen p.center:first-of-type {		text-align: left;	}	#screen p.center br { display: none; }	#screen .appBox{		display: block;		margin-top: 2em;	}	#screen .appBox h3 {	font-size: 1.2em;	}	#screen .appBox li {		width: auto;	}	#screen .appBox li:not(:last-of-type) { margin-bottom: 2em; }}#verupBox{	border: 1px solid #000;	padding: 1.5em 2.5em;	margin-bottom: 3em;}#verupBox h3{	font-size: 1.5em;	font-weight: 700;	text-align: center;}#verupBox h3 p{	margin-bottom: 0;}#verupBox h3 p span{	font-size: 0.7em;	padding: 0.2em 0.8em;	margin-bottom: 0;	background-color: #c4f04c;}#verupBox .listBox li{	display: flex;	justify-content: space-between;}#verupBox .listBox li + li{	margin-top: 2em;}#verupBox .listBox .txt{	width: 52%;	padding-left: 1.5em;/*	background-color: #FEF;*/}#verupBox .listBox .pic{	width: 44%;/*	background-color: #EEF;*/}#verupBox h4{	font-size: 1.25em;	font-weight: 700;	text-indent: -1.2em;  line-height: 1.5;  margin-bottom: 0.5em;}#verupBox h4 span{	font-size: 1.4em;}#verupBox .numberList {	padding: 0.5em 0;}#verupBox .numberList li{	margin:0;	text-indent: -1em;  padding-left: 1em;	line-height: 1.6;	display: inherit;}#verupBox .numberList li + li{	margin-top: 0.2em;}#verupBox .cUnderLine {	background: linear-gradient(transparent 70%,#fffa81 70%);}@media only screen and (max-width:768px) {	#verupBox {    padding: 1em;    margin: 3em 0;	}	#verupBox h3 {    font-size: 1.2em;	}	#verupBox .listBox li{		flex-direction: column;	}	#verupBox .listBox .txt {		width: 100%;		padding-left: 1em;	}	#verupBox .listBox .pic {		width: 100%;		text-align: center;	}	#verupBox h4 {		font-size: 1em;		text-indent: -1em;	}}/* #use-case------------------------------------------------------*/#use-case {	background: #107059 url("../img/top/scene_bg.jpg") no-repeat center center;	background-size: cover;	color: #FFF;}#use-case .type{	margin-bottom: 3em;	display: flex;	justify-content: space-between;}#use-case .type div{	width: 49%;}#use-case .type .pic{	width: 45%;}#use-case .typeInner{}#use-case .typeInner h3 {	text-align: center;	padding: 0.4em 0;	background: #1dd5e6 linear-gradient(90deg, #1dd5e6, #46aef7);	color: #FFF;	font-size: 1.25em;	font-weight: 700;	margin-bottom: 0.5em;}#use-case .typeInner dl{	margin-top: 1.5em;}#use-case .typeInner dt{	color:#000;	font-weight: 700;	font-feature-settings: "palt";	width: 7.5em;	padding: 0.1em 0.5em;	margin-bottom: 0.5em;	text-align: center;	display: inline-block;	background: #FFF;}#use-case .typeInner dd{	line-height: 1.6;}#use-case .typeInner dd + dd {	margin-top: 1em;}#use-case .type .typeInner a.txtLink:not(:hover) {	color: #FFF;}#use-case .type.tMoment{	flex-direction: row-reverse;}#use-case .type.tMoment .pic{	text-align: right;}#use-case .type.tMoment .typeInner h3 {	background: #f06868 linear-gradient(90deg, #f06868, #ff525c);}@media only screen and (max-width:768px) {	#use-case .type{		margin-bottom: 3em;		display: block;	}	#use-case .type div,	#use-case .type .pic {		width: auto;	}	#use-case .type .pic { display: none; }	#use-case .typeInner h3 {		font-size: 1.2em;	}}/* #Flow------------------------------------------------------*/#flow ul {	display: flex;	justify-content: space-evenly;}#flow ul li {	position: relative;	width: 18%;}#flow ul p {	position: relative;}#flow ul p span {	position: absolute;	bottom: 0;	width: 100%;	padding-bottom: 1em;	line-height: 1.4;	text-align: center;	font-weight: bold;	color: #FFF;}#flow ul a {	display: block;	padding: 0.5em;	background-image: linear-gradient(		123deg, 		rgba(44, 166, 224, 1), 		rgba(39, 166, 102, 1)	);	border-radius: 5px;	box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);	text-align: center;	font-weight: bold;	color: #FFF;}#flow ul a.trial {	background-image: linear-gradient(    123deg,    rgba(251, 204, 0, 1),    rgba(229, 19, 115, 1)  );}#flow ul a:hover {	opacity: 0.8;}#flow ul .arrow {	position: absolute;	top: 28%;	right: 0;	width: 1.5em;	transform: translateX(50%);}@media only screen and (max-width:768px) {	#flow { padding-bottom: 0; }	#flow ul {		display: block;	}	#flow ul li {		width: 50%;		max-width: 200px;		margin: 0 auto 2em;	}	#flow ul a {		margin-top: -0.5em;	}	#flow ul a:hover {		opacity: 0.8;	}	#flow ul .arrow {		position: absolute;		top: auto;		right: auto;		left: 50%;		bottom: 0;		width: 1.5em;		transform: translate(-50%,100%) rotate(90deg);	}}/* #price------------------------------------------------------*//*#price h3 {	text-align: center;	font-size: 1.4em;	font-weight: bold;	color: #55c3c7;}#price table {  width: 100%;	margin-bottom: 1em;  border-collapse: collapse;  text-align: left;}#price th,#price td {	padding: 1em;  border: 1px solid #ccc;  vertical-align: top;  min-height: 0vw;}#price th {  background: #e5f9fd;  font-weight: 500;}#price th.sub {  width: 0;  background: #EFEFEF;  white-space: nowrap;}#price .pbTitle {	padding: 0.5em;	font-size: 1.1em;  font-weight: bold;  text-align: center;  letter-spacing: 1px;  background-color: #e5f9fd;}#price .pbTitle span {  color: #000;}#price .amount {  display: flex;  justify-content:space-between;  align-items: baseline;  padding: 0 5em;  font-size: 1.2em;  margin-bottom: 0.5em;}#price .amount .txt span {  color: #135aac;  font-weight: 900;  letter-spacing: 1px;}#price .amount .money {  white-space: nowrap;  padding-left: 1.5em;  line-height: 1.4;}#price .amount .money strong {  font-size: 1.2em;}#price .servicetxt {	margin-top: 1em;}#price .pic {  margin-bottom: 1em;}#price .deliver {  padding: 1em 1.8em;  margin-bottom: 1em;  border: 1px solid #ddd;}#price .deliver .dHead {  color: #135aac;  font-weight: 700;  margin-bottom: 0.5em;}#price .capList li {	margin-bottom: 0;	font-size: 0.875em;}#price #usb-dongle .flex {	align-items: center;}#price #usb-dongle .flex .pic {	width: 250px;	margin-right: 1em;}#price .movie {	max-width: 640px;	margin: 2em auto;}@media only screen and (max-width:768px) {	#price { padding-bottom: 0; }	#price h3 { font-size: 1.2em; }	#price h3::before {    width: 90px;    height: 4px;    border-radius: 5px;    background-color: #00abbd;  }	#price table,	#price thead,	#price tbody,	#price tr,	#price th,	#price td {		display: block;		width: 100% !important;		border: 0;	}	#price tr { margin-bottom: 1em; }	#price th,	#price td {		padding: 0.5em 1em;	}	#price th { font-weight: bold; }	#price .amount {		display: block;		margin-bottom: 1em;		padding: 0;		font-size: 1.1em;	}	#price .amount .money {		padding-left: 0;		text-align: right;	}	#price .deliver {		padding: 1em;	}	#price #usb-dongle .flex {		display: block;	}	#price #usb-dongle .flex .pic {		width: 50%;		margin:0 auto 1em;	}}*//*price タイトル系*/#price .priHeadline01 {	text-align: center;	font-size: 1.4em;	font-weight: bold;	color: #55c3c7;	margin-top: 2em;}#price .priHeadline02 {	padding: 0.5em;	font-size: 1.1em;	font-weight: bold;	text-align: center;	letter-spacing: 1px;	background-color: #e5f9fd;}#price .priHeadline02 span {	color: #000;}@media only screen and (max-width:768px) {	#price .priHeadline01 {		font-size: 1.2em;	}}/*price 共通*/#price section p{	margin: 0;}#price .pic {  margin-bottom: 1em;}#price .toptxt{	text-align: center;	margin-bottom: 1em;}#price .deals{	font-size: 1.2em;	font-weight: 700;	text-align: center;	margin: 0.5em 0 0;}#price .cUnderLine {	background: linear-gradient(transparent 65%, #feffa0 0%);}#price .capList {	margin-bottom: 2em;}#price .capList li {	color: #666;	font-size: 0.875em;	line-height: 1.6;	margin-bottom: 0;}#price .name{	color: #0066cc;	font-size: 1.2em;	font-weight: 700;	margin-bottom: 0;	line-height: 1.6;}#price .pl_title{	font-size: 0.9em;	font-weight: 700;	text-decoration: underline;	text-underline-offset: 0.3em;}#price .pl_price span{	font-size: 1.4em;	font-weight: 700;	padding-right: 0.1em;	line-height: 1.6;}#price .pl_tax{	font-size: 0.9em;}@media only screen and (max-width:768px) {	#price .toptxt{		text-align: left;	}	#price .deals{		font-size: 1em;	}	#price .name{		font-size: 1.1em;		text-align: center;	}	#price .pl_title{		font-size: 0.8em;	}	#price .pl_price span{		font-size: 1.2em;	}	#price .pl_tax{		font-size: 0.8em;	}}/*基本製品*/#price .basicBox{  background-color: #f3f3f3;	padding: 2em;}#price .basicBox + .basicBox{	margin: 2em 0 0.5em 0;}#price .basicBox .expBox{	background-color: #FFF;	border-radius: 4px;	padding: 1em 2em 1em;	margin-bottom: 1em;	font-feature-settings: "palt";}#price .basicBox .expBox dl{	display: flex;	justify-content: space-between;	align-items: center;	margin: 0 0 0.5em;}#price .basicBox .expBox dt{	width: 55%;}#price .basicBox .expBox dt p{	font-size: 0.9em;	line-height: 1.6;}#price .basicBox .expBox dd{	display: flex;}#price .basicBox .expBox dd > div{	text-align: right;}#price .basicBox .expBox dd > div + div{	margin-left: 2.5em;}#price .basicBox .detailBox{	display:flex;	justify-content: space-between;}#price .basicBox .detailBox.boderb{	border-bottom: 1px dotted #333;	padding: 0 0 1.5em 0;}#price .basicBox .detailBox > div{	width: 48%;}#price .basicBox .detailBox > div p{	line-height: 1.6;	margin:0 0 0.5em;}#price .movie {	max-width: 640px;	margin: 1em auto 0;}#price .movie .title{	text-align: center;	font-size: 1.2em;	font-weight: 700;	margin-bottom: 0.5em;}@media only screen and (max-width:768px) {	#price .basicBox{		padding: 1em;	}	#price .basicBox + .basicBox{		margin: 1.5em 0 0.5em 0;	}	#price .basicBox .expBox{		padding: 1em 1em 1em;	}	#price .basicBox .expBox dl{		flex-direction: column;		margin: 0 0 1em;	}	#price .basicBox .expBox dt{		width: 100%;		margin-bottom: 1em;	}	#price .basicBox .expBox dd > div{		text-align: center;	}	#price .basicBox .detailBox{		flex-direction: column;	}	#price .basicBox .detailBox > div{		width: 100%;	}	#price .movie .title{		font-size: 1.1em;	}}/*price 各種サポート式料金表*/#price .supportList{	margin-bottom: 0.5em;}#price .supportList dl{	display: flex;	justify-content: space-between;	align-items: center;	padding: 1em 0;	margin: 0;	border-bottom: 1px dotted #333}#price .supportList dl:first-child{	padding-top: 0;}#price .supportList dl dt{	width: 20%;}#price .supportList dl .txt{	width: 60%;	line-height: 1.5;}#price .supportList dl .txt span{	color: #888;	font-weight: 700;}#price .supportList dl .txt p + p{	margin-top: 0.5em;}#price .supportList dl .amount{	width: 20%;	text-align: right;}#price .supportList.typeB{	border-top: 1px dotted #333;	margin-bottom: 1em;}#price .supportList.typeB dl:first-child{	padding: 1.5em 0;}@media only screen and (max-width:768px) {	#price .supportList dl{		flex-direction: column;	}	#price .supportList dl dt{		width: 100%;	}	#price .supportList dl .txt{		width: 100%;		margin: 0.5em 0 0;}	#price .supportList dl .txt p + p{		margin-top: 1em;	}	#price .supportList dl .amount{		width: 100%;		margin: 1em 0 0;	}}/*price table式料金表*/#price .sLineTable{	width: 100%;	font-feature-settings: "palt";}#price .sLineTable tr{	text-align: left;	border-bottom: 1px dotted #333;}#price .sLineTable th{	width: 65%;	padding-left: 1em;}#price .sLineTable td{	text-align: right;	line-height: 1.5;	padding: 1em;}#price .sLineTable td.subtit{	font-size: 0.9em;	font-weight: 700;	padding: 0.5em 1em;}#price .sLineTable.col2box{	border-top: 1px dotted #333;	margin-bottom: 1.5em;}@media only screen and (max-width:768px) {	#price .sLineTable th{		width: 40%;		padding: 1em 0;		font-size: 1em;		text-align: left;	}	#price .sLineTable td{		padding: 1em 0;	}	#price .sLineTable td.subtit{		font-size: 0.8em;		padding: 0;	}	#price .sLineTable.col2box th{		width: 65%;	}}/*price 動作環境表*/#price .operation table{	width: 100%;	border-top: 1px dotted #333;}#price .operation tr{	border-bottom: 1px dotted #333;}#price .operation th{	font-size: 1.1em;	font-weight: 700;	text-align: right;	padding: 1em 1.5em;	background-color: #f8f8f8;	width: 30%;}#price .operation td{	padding: 1em 1.5em;}@media only screen and (max-width:768px) {	#price .operation th{		font-size: 1em;		text-align: left;		padding: 1em 0.5em;		width: 28%;	}	#price .operation td{		padding: 1em 1em;	}}/* #info------------------------------------------------------*/#info h3 {	margin-bottom: 0;	padding: 0.5em;	font-size: 1.1em;  font-weight: bold;  text-align: center;  letter-spacing: 1px;  background-color: #e5f9fd;}#info ul {	margin-bottom: 2em;}#info li {  margin-bottom: 0;  border-bottom: 1px solid #ccc;}#info li a,#info li dl {  display: flex;  padding: 1em 0;}#info li dd {  margin-left: 0;}#info li a:hover {  color: #0076b3;}#info .date {  margin-right: 1em;  white-space: nowrap;  font-weight: bold;  color: #888;}#info .dl-link {	margin-bottom: 1em;}@media only screen and (max-width:768px) {  #info li a,  #info li div {    display: block;    padding: 0.5em 0;  }	#info .btn {		width: 80%;	}}/* #partner------------------------------------------------------*/#partner {  border: 8px solid #eee;  max-width: 960px;  margin: 0 auto 3em;	padding: 2em 2em 0;}#partner h2 {	text-align: center;}#partner h2 br { display: none; }#partner .conbox {  display: flex;  justify-content: space-between;	margin-bottom: 0;}#partner .conbox .txt,#partner .conbox .pic {  width: 48%;  max-width: 460px;	margin-bottom: 0;}#partner .btn {	margin: 2em auto;}@media only screen and (max-width:768px) {	#partner {		border-width: 0.5em;		margin: 0 1em 2em;		padding: 1em 1em 0;	}	#partner h2 {		font-size: 1.2em;	}	#partner .conbox {		display: block;	}	#partner .conbox .txt,	#partner .conbox .pic {		width: auto;		max-width:none;	}	#partner .conbox .pic { margin-bottom: 1em; }	#partner .btn {		width: 100%;		font-size: 0.875em;	}}/* #plan------------------------------------------------------*/#plan .sp_only,#plan .sp_only .triangle_down_left,#plan .sp_only .triangle_down_left::before{    display:none;}#plan .container {    max-width: 1000px;    margin: 0 auto;    padding-bottom: 2em;	position:relative;    }#plan .product-box {	width:100%;    display: flex;    justify-content: space-around;	align-items:center;	margin-bottom:1em;    }#plan .product-image {      width: 50%;	  padding:2em;    }#plan .product-details {      width: 50%;	  margin:0;    }#plan .product-details p {	  margin:0;    }#plan .product-details p:nth-of-type(1),#plan .product-details p:nth-of-type(3){	font-weight:bold;	margin-bottom:.5em;}#plan .product-details p:nth-of-type(2) {	font-size:1.5em;	font-weight:bold;	margin-bottom:1.5em;}#plan .product-details ul,#plan .product-details ul li {	  margin:0;    }#plan .section-title-01{  width: 93%;  height: 3em;  border: 1px solid #1b1464;  display: flex;  align-items: center;  justify-content: center;  font-weight: bold;  margin: 0 auto 1em;  position: relative;}#plan .section-title-02 {   position: absolute;  top: 60%;  left: 0;  right: 0;  margin: 0 auto;   background-color: white;  width: 93%;   height: 3em;  border: 1px solid #1b1464;  display: flex;  align-items: center;  justify-content: center;  font-weight: bold;}#plan .section-title-03 {  display:none;}#plan .section-title-01 .triangle_down_left{  top:1.6em;  left:-4em;}#plan .section-title-02 .triangle_down_left {  top:1.6em;  left:-1em;}#plan .triangle_down_left,#plan .section-title-01 .triangle_down_right,#plan .section-title-02 .triangle_down_right{  display: inline-block;  position: relative;  width: 1.5em;   height: 1.299em;   background: #1b1464;  clip-path: polygon(0 0, 100% 0%, 50% 100%);}#plan .triangle_down_left,{  background: #1b1464;}#plan .triangle_down_left::before{  content: "";  display: block;  position: absolute;  top: 0.1em;   left: 50%;  width: 1.155em;   height: 1em;   background: #fff;  clip-path: polygon(0 0, 100% 0%, 50% 100%);  transform: translateX(-50%);}#plan .section-title-01 .triangle_down_right,#plan .section-title-02 .triangle_down_right{  background: #000000;  top:1.6em;}#plan .section-title-01 .triangle_down_right {  right:-4em;}#plan .section-title-02 .triangle_down_right {  right:-1em;}#plan .section-title-01 .triangle_down_right::before,#plan .section-title-02 .triangle_down_right::before{  content: "";  display: block;  position: absolute;  top: 0.1em;   left: 50%;  width: 1.155em;   height: 1em;   background: #fff;  clip-path: polygon(0 0, 100% 0%, 50% 100%);  transform: translateX(-50%);}#plan .plans {  position: relative;  display: flex;  flex-wrap: wrap;  justify-content: space-between;  gap: 2em; /* プラン間の余白 */}#plan .plan-box {    border: 2px solid #1b1464;    width: 48%;	margin-bottom:1em;    } #plan .plan-box h3 {	 width:100%;	 background-color:#1b1464;	 color:white;     text-align: center;	 padding:1em 0;	 font-size:1.5em;} #plan .plan-box h3 .subtitle {	 display:block;	 color:white;	 font-size:.75em;	 margin-bottom: -0.3em;    } #plan .plan-box .text{	 width:85%;	 margin:0 auto 1em;    } #plan  .price-box {	 width:85%;     border: 2px solid #0071bc;     border-radius: 6px;     padding: 1em;     margin:0 auto 6em;     text-align: center;	 color:#0071bc;    } #plan  .price-box p:nth-of-type(1) {	 font-size:1.5em;	 font-weight:bold;	 margin-bottom:0;    } #plan  .price-box p:nth-of-type(2) {	 height:40px;	 font-weight:bold;	 margin-bottom: .5em;    } #plan  .price-box p:nth-of-type(3) {	 font-weight:bold;    }#plan .plan-box .price-box .price {      font-size: 2em;    }#plan  .subplan-box {	 width:85%;     border: 2px solid #009245;     border-radius: 6px;     padding: 1em;     margin:0 auto 1em;     text-align: center;	 color:#009245;    } #plan  .subplan-box p:nth-of-type(1) {	 	 margin-bottom:0;    } #plan  .subplan-box p:nth-of-type(2) {	 font-size:1.5em;	 font-weight:bold;	 margin-bottom:.5em;    } #plan  .subplan-box p:nth-of-type(3) {	 height:40px;	 font-weight:bold;    } #plan  .subplan-box p:nth-of-type(4) {	 font-weight:bold;    }#plan .plan-box .subplan-box .tip-box {	font-size:.8em;		font-weight:bold;	padding:.2em .3em;	margin-right: .3em;	background-color:#009245;	color:white;	vertical-align: super;    }#plan .plan-box .subplan-box .price {      font-size: 2em;    }#plan .capList li {    color: #666;    font-size: .875em;    line-height: 1.6;    margin-bottom: 0;}#plan .basicBox .detailBox > div{	width: 48%;}#plan .basicBox .detailBox > div p{	line-height: 1.6;	margin:0 0 0.5em;}#plan .movie {	max-width: 640px;	margin: 1em auto 0;}#plan .movie .title{	text-align: center;	font-size: 1.2em;	font-weight: 700;	margin-bottom: 1.5em;	border-bottom: 1px dotted #333;}    @media (max-width: 768px) {#plan .container {    padding-bottom: 0;    }#plan .product-box {	width:100%;    display: block;    }#plan .product-image {    width: 80%;	margin:0 auto;	padding:0 2em 0 2em;    }#plan .product-details {      width: 100%;	  margin:0;    }#plan .product-details p:nth-of-type(2) {	font-size:1.2em;}#plan .section-title-01{  width: 100%;  padding:1em 0;}#plan .section-title-01 .triangle_down_left{  position: absolute;  top:2.4em;  left: calc(50% - 0.75em); }#plan .section-title-01 .triangle_down_right{display:none;}#plan .plan-box h3 {	 font-size:1.2em;}#plan  .price-box p:nth-of-type(2) {	 height:60px; }#plan .section-title-03{  width: 85%;  border: 1px solid #1b1464;  display: flex;  align-items: center;  justify-content: center;  font-weight: bold;  text-align:center;  margin: 0 auto 1em;	padding:0.5em 0;  position: relative;}#plan .section-title-03 .triangle_down_left {  position: absolute;  top:4.2em;  left: calc(50% - 0.75em); }#plan  .price-box {     margin:0 auto 1em;    }#plan  .product-box {        flex-direction: column;        align-items: center;      }     #plan .plan-box {        width: 100%;      }		  #plan .section-title-02 {    position: static;    transform: none;    margin: 1.5em auto;    white-space: normal;  }#plan .pc_only{			display:none;		}    }/* --- 2025/9/11追記分 --- *//* --- 共通レイアウト --- */.vp-baseWidth {    max-width: 960px;    margin-left: auto;    margin-right: auto;    padding-left: 1em;    padding-right: 1em;} .vp-content-block {    margin: 0 0 4em;}.vp-flow-grid {	display: grid;    align-items: stretch; }.vp-plan-grid,.vp-cta-grid{    display: grid;    grid-template-columns: repeat(1, minmax(0, 1fr));}.vp-flow-grid,.vp-cta-grid {    gap: 2em;} .vp-headline1 {	text-align:center;    font-size: 2.1em;    font-weight: 700;    letter-spacing: .02em;    margin-bottom:.5em;}/* --- ヘッダー & タイトル --- */.vp-section-header,.vp-content-block,.vp-section-description {    text-align: center;}#introduction-and-plan .vp-section-header {	margin-top: 4em;    margin-bottom: 1.4em;}#introduction-and-plan .vp-subtitle {    margin-top: 1em;    font-weight:bold;    color: #333; }#introduction-and-plan .vp-subtitle .bg_gra01{    color: #ffffff;     padding: .2em .5em;    border-radius: 4px;	background: linear-gradient(to right, #55c3c7, #0071bc); 	/* 改行された要素の見た目をどうするか決めるプロパティ */	-webkit-box-decoration-break: clone; /* Safari, Chrome用 */   box-decoration-break: clone;       /* 標準 */}.headicon span {    color: #55c3c7;    font-size: 1.25em;    letter-spacing: 5px;    font-family: 'Roboto', sans-serif;}.headicon span:after {    content: "";    display: block;    width: 50px;    height: 2px;    margin: .1em auto 0;    background: #55c3c7;}.vp-headline2 {    color: #000;    font-size: 1.6em;    font-weight: 700;    line-height: 1.4;    text-align: center;    margin: 0;}.vp-section-description {    margin-top: 0.5em;    color: #4b5563;}/* --- 導入の流れ --- */.vp-flow-step {    background-color: #ffffff;    padding: 2em 1.4em;	border:solid 1px #000000;	border-radius: 8px;    box-shadow: 0 1px 4px 0 rgb(0 0 0 / 0.15);    text-align: center;}.vp-step-number {    margin:0;    color: #55c3c7;    font-family: 'Roboto', sans-serif;    font-size: 1em;    font-weight:bold;}.vp-step-title {    margin:0 0 .5em 0;    font-size: 1.125em;    font-weight:bold;    color: #111827;}.vp-step-description {    text-align:left;    margin-top:0.25em;}/* --- ご利用プラン --- */.vp-plan-grid {	margin:1.4em 0 0 ;    gap: 3em;}.vp-plan-leftimg,.vp-plan-rightimg{	width: 10em;    margin: 1.4em auto 0;}.vp-plan-leftbox,.vp-plan-rightbox {    display: flex;    flex-direction: column;    background-color: #ffffff;    padding: 2em;    border-radius: 6px;    box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);}.vp-plan-leftbox {    border: 1px solid #0071bc;}.vp-plan-rightbox {    border: 1px solid #009245;}.vp-plan-leftbox .vp-plan-title,.vp-plan-rightbox .vp-plan-title {    font-size: 1.5em;    font-weight: 700;    margin:0 0 .5em 0;}.vp-plan-leftbox .vp-plan-title,.vp-plan-leftbox  .vp-plan-catchphrase {    color:#0071bc;}.vp-plan-rightbox .vp-plan-title,.vp-plan-rightbox  .vp-plan-catchphrase {    color:#009245;}.vp-plan-leftbox .vp-plan-catchphrase,.vp-plan-rightbox  .vp-plan-catchphrase {    margin: 0;    font-weight: 600;    letter-spacing: 1px;}.vp-plan-description {    text-align:left;}/* --- 動作環境 --- */.vp-headline3 {    color: #000;    font-size: 1.6em;    font-weight: 700;    line-height: 1.4;    text-align: center;    margin: 0;}.vp-env-box {    margin:1.4em 0;    background-color: #ffffff;    padding: 0;    border-radius: 6px;    box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);}.vp-env-box table {    width: 100%;    border-collapse: collapse;    border: 1px solid #e5e7eb;}.vp-env-box th,.vp-env-box td {	text-align:right;    padding: 1em 1.5em;    border: 1px solid #e5e7eb;    color: #4b5563;}.vp-env-box td:not(:first-child) {    text-align: left;}.vp-env-box th{    font-weight: 600;    color: #111827;    width: 25%;    background-color: #f9fafb;}.vp-env-box td div {    margin-bottom: 0.4em;}.vp-env-box td div:last-child {    margin-bottom: 0;}/* --- サポート & カスタマイズ --- */.vp-support-grid {    display: grid;    margin: 1.4em 0;    padding: 1.4em 0;     border-radius: 6px;    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);    counter-reset: point-counter;}.vp-support-box {    text-align: center;    padding: 0 1em;    position: relative;}.vp-support-icon {    background-color: #f5f5f5;     width: 4em;      height:4em;     border-radius: 50%;     display: flex;    justify-content: center;    align-items: center;	margin: 1.4em auto;}.vp-support-icon img {    width: 4.5em;      height: 4.5em; }.vp-support-title {    margin: 0;    font-weight: bold;    line-height: 1.4;	font-size:1.125em;}.vp-support-title::before {    counter-increment: point-counter;    content: 'POINT 0' counter(point-counter);    display: block;    color: #55c3c7;    font-size: 0.8em;    font-family: 'Roboto', sans-serif;    font-weight: bold;    line-height: 2em;}.vp-support-desc {    text-align: left;    color: #666;    line-height: 1.6;    font-size: .875em;}/* --- お問い合わせCTA --- */.vp-cta-grid{    margin:0 ;}#support-and-contact .vp-cta_box {    padding: 2em 0;	font-weight:bold;    text-align:center;	letter-spacing:1px;}#support-and-contact .vp-cta-grid {    align-items: center;    gap: 2; }#support-and-contact .vp-btn {    position: relative;     display: inline-block;    padding: 1em 2em;    border-radius: 100vw;    text-decoration: none;    font-weight: 700;    color: #ffffff;	width:85%;    text-align: center;    margin-top: 2em;     box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);    transition: transform 0.2s ease, box-shadow 0.2s ease;}/* ホバー時アニメーション */#support-and-contact .vp-btn:hover {    transform: translateY(-3px);    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);}#support-and-contact .vp-subtitle,#support-and-contact .vp-btn-content i {    transition: all 0.3s ease-in-out;}#support-and-contact .vp-btn:hover .vp-subtitle {    opacity: 0;     visibility: hidden;     transform: translateX(-50%) translateY(-10px); }#support-and-contact .vp-btn:hover .vp-btn-content i {    transform: translateY(-50%) translateX(5px); }#support-and-contact .vp-subtitle {    position: absolute;    top: -1.6em;     left: 50%;    transform: translateX(-50%);     background-color: #ffffff;    padding: .2em 1.4em;    border-radius: 100vw;    font-size: .8em;    font-weight: 500;    white-space: nowrap;     margin: 0;}#support-and-contact .vp-subtitle::after {    content: '';    position: absolute;    bottom: -5px;     left: 50%;    transform: translateX(-50%) rotate(45deg);    width: 10px;    height: 10px;    background-color: #ffffff;}#support-and-contact .vp-btn-content {    position: relative;     margin: 0;    letter-spacing: 2px;}#support-and-contact .vp-btn-content i {    position: absolute;    right: 2em;     top: 50%;     transform: translateY(-50%); }#support-and-contact .vp-btn-orange {    background-color: #f37721;}#support-and-contact .vp-btn-orange .vp-subtitle {    border: 1.5px solid #f37721;    color: #000;}#support-and-contact .vp-btn-orange .vp-subtitle::after {    border-bottom: 1.5px solid #f37721;    border-right: 1.5px solid #f37721;}#support-and-contact .vp-btn-brown {    background: #2ca6e0 linear-gradient(123deg, rgba(44, 166, 224, 1), rgba(39, 166, 102, 1));}#support-and-contact .vp-btn-brown .vp-subtitle {    color: #4a403a;	border: 1px solid transparent;    background-image: linear-gradient(#fff, #fff),                  linear-gradient(123deg, #2ca6e0, #27a666);    background-origin: border-box;    background-clip: padding-box, border-box;}#support-and-contact .vp-btn-brown .vp-subtitle::after {    border-bottom: 1.5px solid #2ca5a8;    border-right: 1.5px solid #2ca5a4;}/* 吹き出し内の強調テキスト */#support-and-contact .vp-btn-brown .vp-subtitle .highlight {    color: #f37721;     font-weight: 700;}/* --- info btn 背景色だけグラデーション緑に --- */#info .baseWidth .btn {    background: #2ca6e0 linear-gradient(123deg, rgba(44, 166, 224, 1), rgba(39, 166, 102, 1));}/* --- レスポンシブ SP --- */@media only screen and (max-width:768px) {	/* --- 共通レイアウト --- */	.vp-content-block {    margin: 0 0 3em;}	.sponly_none{		display:none;	}		.headicon span {    font-size: 1.25em;}.vp-headline2 {    font-size:1.4em;}	/* --- ヘッダー & タイトル --- */    .vp-headline1 {        font-size: 1.6em;		line-height:1.4;    }   #introduction-and-plan .vp-subtitle {		line-height:1.6;}/* --- 導入の流れ --- */	.vp-flow-grid {        grid-template-columns: repeat(2, minmax(0, 1fr));		gap: 1em;    }	.vp-flow-step {    padding: 1em 1.4em;}	.vp-step-number {    font-size: 1.125em;}.vp-step-title {  margin: 0;  line-height: 1.4;  font-size: 1.125em;  min-height: 3.25em;  display: flex;  align-items: center;  justify-content: center;    text-align: center;}	/* --- ご利用プラン --- */	.vp-plan-grid {    margin:1.4em 0 0 ;    gap: 1em;}.vp-plan-leftimg,.vp-plan-rightimg{	width: 9em;    margin: 0 auto;}.vp-plan-leftbox,.vp-plan-rightbox {    padding: 2em 0;}.vp-plan-leftbox .vp-plan-title,.vp-plan-rightbox .vp-plan-title {    font-size: 1.4em;}	.vp-plan-leftbox .vp-plan-description,	.vp-plan-rightbox .vp-plan-description{		padding:0 2em;	}/* --- 動作環境 --- */.vp-env-box th,.vp-env-box td {    padding: 0.6em 1em;}.vp-env-box td {    padding: 0.5em 1em;	line-height: 1.6;}.vp-env-box th {    width: 32%;}/* --- サポート & カスタマイズ --- */.vp-support-icon {    width:4em  ;    height: 4em;     margin: 1.5em auto; }.vp-support-icon img {    width:4em;      height:4em; }.vp-support-title {    font-size: 1em;    line-height: 1.6;}  .vp-support-grid {    grid-template-columns: repeat(2, 1fr);    gap: 0; /* 線を合わせるために隙間ゼロ */    position: relative;  }  .vp-support-box {	 text-align: center;    position: relative;    padding: 1.4em 1em;  }  /* 1番目（左上） → 右に縦線 + 下に横線 */  .vp-support-box:nth-child(1)::after {    content: "";    position: absolute;    top: 10%;    right: 0;    height: 80%;    width: 1px;    background: #ddd;  }  .vp-support-box:nth-child(1)::before {    content: "";    position: absolute;    left: 10%;    bottom: 0;    width: 80%;    height: 1px;    background: #ddd;  }  /* 2番目（右上） → 下に横線 */  .vp-support-box:nth-child(2)::before {    content: "";    position: absolute;    left: 10%;    bottom: 0;    width: 80%;    height: 1px;    background: #ddd;  }  /* 3番目（左下） → 右に縦線 */  .vp-support-box:nth-child(3)::after {    content: "";    position: absolute;    top: 10%;    right: 0;    height: 80%;    width: 1px;    background: #ddd;  }	/* --- お問い合わせCTA --- */.vp-cta-grid {    gap: 0;}	#support-and-contact .vp-btn-content i {    right: -.5em; }#support-and-contact .vp-cta_box {    padding: 2em 0 0;}}/* --- レスポンシブ PC --- */@media only screen and (min-width: 769px) {	    .vp-support-box:not(:first-child) {        border-left: 1px solid #e5e7eb;    }	#support-and-contact .vp-btn {    min-width: 340px; }    .vp-flow-grid,	.vp-support-grid{        grid-template-columns: repeat(4, minmax(0, 1fr));    }	    .vp-plan-grid,	.vp-cta-grid{        grid-template-columns: repeat(2, minmax(0, 1fr));    }}