@charset 'UTF-8';
/*********************************
 * common
 *********************************/
/* reset & frequently */
html, body,
header, footer, nav, main,
section, article, address,
figure, time,
h1, h2, h3, h4, h5, h6,
ul, ol, li,
div, p,
form,
a, span, img, iframe, strong, em,
table, caption, tr, th, td,
dl, dt, dd,
input, textarea, select, option {
	margin: 0;
	padding: 0;
	list-style: none;
	border: none;
	outline: none;
	color: #666;
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
	line-height: 100%;
	vertical-align: baseline;
	font-family: 'Yu-Gothic', sans-serif;
	line-height: 1.6em;
	box-sizing: border-box;
	word-break: break-all;
	-webkit-text-size-adjust: none;
}
header, footer, nav, main,
section, article, address {
	display: block;
}
main {
	background-color: #fff;
	padding: 48px 0;
	position: relative;
	z-index: 3;
}
body:not(.home) main {
	padding-top: 92px;
}
[type="text"],
[type="password"],
select,
textarea,
select {
	border: 1px solid #aaa;
	padding: 8px;
	border-radius: 3px;
	width: 48%;
	margin-right: 1%;
}
[type="submit"],
[type="button"] {
	border-radius: 4px;
}
.error {
	background-color: #fee;
	color: #f55;
	font-size: 13px;
}
.inner {
	width: 1000px;
	margin: auto;
	display: block;
}
.clearfix:after,
#clearfix:after {
	content: '';
	display: block;
	clear: both;
	width: 0;
	height: 0;
}
img {
	font-size: 10px;
}
body:not(.home,.youth2019) main {
	padding-top: 70px;
}
form .fc dl dd .account-login {
	font-weight: bold;
	color: #f55;
	font-size: 13px;
	background-color: #f5f5f5;
}
#contact {
	position: fixed;
	top: 44%;
	z-index: 10;
}
#contact ul li {
	-js-display: flex;
	display: flex;
	align-items: center;
	position: relative;
 	left: -244px;
	transition: .3s;
	background-color: #2b5486;
	margin-bottom: 10px;
	padding: 0 0 0 8px;
}
#contact ul li.tel:after {
	width: 50px;
	display: block;
	text-align: center;
	font-size: 24px;
	font-family: 'Font Awesome 5 Pro';
	content: '\f095';
}
#contact ul li.mail:after {
	width: 50px;
	display: block;
	text-align: center;
	font-size: 28px;
	font-family: 'Font Awesome 5 Pro';
	content: '\f0e0';
}
#contact ul li:hover {
	left: 0;
}
#contact ul li,
#contact ul li * {
	color: #fff;
}
#contact ul li p {
	margin-right: 8px;
}
#contact ul li p span {
	display: block;
}
#contact ul li p span.s {
	color: #ccc;
	text-align: right;
}
/* header */
header {
	background-color: #fff;
	border-bottom: 1px solid #ddd;
	width: 100%;
	z-index: 99;
	position: fixed;
	top: 0;
	left: 0;
}
header > #main-nav .global {
	-js-display: flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px;
}
header > #main-nav .global h1 {
	width: 144px;
}
header > #main-nav .menu-wrap {
	-js-display: flex;
	display: flex;
	align-items: center;
}
header > #main-nav .global h1 img {
	display: block;
	width: 100%;
	min-width: 144px;
}
header > #main-nav .global ul {
	-js-display: flex;
	display: flex;
	justify-content: flex-end;
	justify-content: right;
	align-items: center;
	width: 940px;
}
header > #main-nav .global ul li.ex {
	position: relative;
}
header > #main-nav .global ul li.ex > a {
	display: flex;
}
header > #main-nav .global ul li.ex > a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f107';
	margin-left: 8px;
}
header > #main-nav .global ul li .inner-menu {
	position: absolute;
	left: 0;
	width: 172px;
	display: none;
	border-radius: 5px;
	box-shadow: 0 0 8px 0 #ccc;
}
header > #main-nav .global .inner-menu li {
	padding: 0;
	margin: 0;
}
header > #main-nav .global .inner-menu li:first-child,
header > #main-nav .global .inner-menu li:first-child a {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
header > #main-nav .global .inner-menu li:last-child,
header > #main-nav .global .inner-menu li:last-child a {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}
header > #main-nav .global .inner-menu li a {
	padding: 8px;
	background-color: #fff;
}
header > #main-nav .global .est {
	width: 240px;
}
header > #main-nav .global .other {
	width: 54px;
}
header > #main-nav .global .other img {
	width: 45px;
	height: 45px;
	display: block;
	margin-right: 5px;
}
header > #main-nav .global .other a {
	padding: 0;
	-js-display: flex;
	display: flex;
	align-items: center;
}
header > #main-nav .global .other .lumion-account:after {
	font-family: 'Font Awesome 5 Free';
	content: '\f2bd';
	font-size: 32px;
	font-weight: 900;
}
header > #main-nav .global .other li {
	position: relative;
}
header > #main-nav .global .other span {
	position: absolute;
	background-color: rgba(50,50,50,.8);
	color: #fff;
	padding: 4px 0;
	display: none;
	right: 0;
	border-radius: 4px;
	width: 144px;
	text-align: center;
}
header > #main-nav .global .other li {
	margin-left: 8px;
}
header > #main-nav .global .sns {
	width: 200px;
	display: flex;
}
header > #main-nav .global .sns li {
	margin-left: 0;
}
header > #main-nav .global .sns li a {
	font-family: 'Font Awesome 5 Pro';
	font-size: 24px;
	display: block;
	line-height: 1em;
}
header > #main-nav .global .sns .facebook:before {
	content: '\f230';
}
header > #main-nav .global .sns .twitter:before {
	content: '\f099';
}
header > #main-nav .global .sns .instagram:before {
	content: '\f16d';
}
header > #main-nav .global .sns .youtube:before {
	content: '\f16a';
}
header > #main-nav .global ul li {
	margin-left: 16px;
	position: relative;
}
header > #main-nav .global ul li a {
	display: block;
	padding: 8px;
	font-size: 14px;
	color: #2b5486;
}
header > #main-nav .global .est li a {
	width: 100px;
	text-align: center;
	box-shadow: 1px 1px 2px 0 #aaa;
}
header > #main-nav .global ul .try {
	background-color: #2b5486;
	color: #fff;
	border-radius: 4px;
}
header > #main-nav .global ul .buy {
	background-color: #f7f7f7;
	border-radius: 4px;
}
footer {
	background-color: #2b5486;
	padding: 24px 0 8px;
	position: relative;
	z-index: 2;
}
footer .sitemap {
	display: flex;
	justify-content: space-between;
}
footer .logo {
	margin-bottom: 40px;
	display: flex;
	justify-content: left;
}
footer .logo h1 {
	padding: 12px;
}
footer .logo h1 img {
	width: 180px;
	display: block;
}
footer .sitemap .links {
	width: calc(100% - 280px);
	display: flex;
	justify-content: space-between;
}
footer .sitemap .links > div h2,
footer .sitemap .links a {
	color: #fff;
	font-size: 16px;
	word-break: keep-all;
}
footer .sitemap .links > div h2 {
	margin-bottom: 16px;
	font-weight: bold;
	padding: 1px 4px;
	border-bottom: 1px solid #fff;
	display: inline-block;
}
footer .sitemap .links > div h2 a {
	font-weight: bold;
}
footer .sitemap .links > div h2 a:hover {
	color: #ccc;
}
footer .sitemap .links ul li {
	padding-left: 4px;
	margin-bottom: 12px;
	color: #aaa;
	font-size: 14px;
}
footer .sitemap .links ul li a {
	font-size: 14px;
}
footer .sitemap .links ul li a:hover {
	color: #ccc;
}
footer .sitemap .links .flex {
	display: flex;
}
footer .sitemap .links .flex ul:last-child {
	margin-left: 16px;
}
footer .sitemap .info {
	width: 200px;
}
footer .sitemap .info h2 {
	display: none;
}
footer .sitemap .info .sns {
	display: flex;
	justify-content: end;
}
footer .sitemap .info .sns li:not(:first-child) {
	margin-left: 16px;
}
footer .sitemap .info .sns li a {
	font-family: 'Font Awesome 5 Pro';
	color: #fff;
	font-size: 32px;
	display: block;
	line-height: 1em;
}
footer .sitemap .info .sns .facebook:before {
	content: '\f230';
}
footer .sitemap .info .sns .twitter:before {
	content: '\f099';
}
footer .sitemap .info .sns .instagram:before {
	content: '\f16d';
}
footer .sitemap .info .sns .youtube:before {
	content: '\f16a';
}
footer .sitemap .info h2 {
	margin-bottom: 16px;
}
footer .sitemap .info h2 a {
	color: #fff;
	font-size: 16px;
}
footer .sitemap .info address {
	color: #fff;
	line-height: 1.8em;
	font-size: 14px;
	margin-bottom: 16px;
}
footer .sitemap .info p,
footer .sitemap .info p a {
	color: #fff;
	font-size: 14px;
}
footer .sitemap .info .tel {
	margin-bottom: 16px;
}
footer .inner small {
	margin-top: 24px;
	display: block;
	color: #fff;
	text-align: center;
}
main .bt-navi {
	background-image: url(/img/common/bt-navi-bg.jpg);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 144px 0;
	position: relative;
	overflow: hidden;
}
main .bt-navi:before {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,.4);
}
main .bt-navi > div > h3 {
	color: #fff;
	text-align: center;
	font-size: 32px;
	margin-bottom: 24px;
}
main .bt-navi > div > p {
	color: #fff;
	text-align: center;
}
main .bt-navi > div > ul {
	margin-top: 48px;
	display: flex;
	justify-content: center;
}
main .bt-navi > div > ul li {
	margin: 0 32px;
}
main .bt-navi > div > ul li a {
	display: block;
	padding: 8px 64px;
	border: 1px solid #fff;
	color: #fff;
	transition: all ease .3s;
}
main .bt-navi > div > ul li a.buy {
	background-color: #fff;
	color: #000;
}
main .bt-navi > div > ul li a.buy:hover {
	opacity: .8;
}
main .bt-navi > div > ul li a.trial:hover {
	background-color: rgba(0,0,0,.5);
}
/*home*/
.home header {
	background: rgba(255,255,255);
	box-shadow: none;
	transition: .3s;
}
.home header.sc {
	background-color: #fff;
	box-shadow: 0 0 8px 0 #ccc;
}
.home header.sc nav .menu li a {
	color: #000;
	text-shadow: none;
}
.home main {
	padding-bottom: 0;
	padding-top: 0;
}
.home #mv-wrap {
	height: 100vh;
	width: 100%;
	position: relative;
	z-index: 2;
	overflow: hidden;
}
.home #mv-wrap video {
	position: fixed;
	top: -38px;
	left: 0;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: 1;
}
.home #mv-wrap #catch-txt {
	position: relative;
	letter-spacing: 4px;
	z-index: 3;
	width: 100%;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.home #mv-wrap #update {
	position: absolute;
	z-index: 40;
	width: 100%;
	background-image: linear-gradient(180deg,rgba(0,0,0,0.83) 0%,rgba(0,0,0,0.35) 100%);
	top: 70px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
border-bottom-color: rgba(255,255,255,0.4);
}
.home #mv-wrap #update a {
	display: block;
	color: #fff;
	text-align: center;
	padding: 1em;
	font-size: 130%;
}
.home #mv-wrap #update a span {
color: #b2c4d0;
margin-left: 8px;
}
.home #mv-wrap #update a:hover {
	opacity: .8;
}
.home #mv-wrap #catch-txt div .lumion {
	padding: 24px;
	margin-bottom: 40px;
}
.home #mv-wrap #catch-txt div .lumion > span {
	display: block;
	text-align: center;
	font-size: 26px;
	color: #fff;
	font-family: Helvetica,Arial,Lucida,sans-serif;
}
.home #mv-wrap #catch-txt div .lumion h2 {
	color: #fff;
	text-align: center;
	font-size: 36px;
	font-weight: bold;
	line-height: 80px;
	font-family: Helvetica,Arial,Lucida,sans-serif;
}
.home #mv-wrap #catch-txt div .lumion h2 .sp {
	display: none;
}
.home #mv-wrap #catch-txt div a {
	display: block;
	width: 240px;
	padding: 6px 0;
	text-align: center;
	margin: auto;
	background-color: #fff;
	border-radius: 3px;
	transition: all .2s linear;
}
.home #mv-wrap #catch-txt div a:hover {
	transform: scale(1.08);
}
.home main > .trial {
	background-image: url(/img/home/trial_bg.png);
	background-size: cover;
	background-position: center;
	padding: 64px 0;
	margin-bottom: 0;
}
.home main > .trial .inner h2 {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	color: #fff;
}
.home main > .trial .inner h2 + p {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	margin-bottom: 8px;
}
.home main > .trial .inner > div {
	padding: 24px 64px 48px;
	margin: auto;
	width: 720px;
	background: #fff;
	box-shadow: 0px 3px 6px #00000029;
	border-radius: 5px;
}
.home main > .trial .inner > div > h3 {
	color: #417287;
	text-align: center;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 24px;
}
.home main > .trial .inner > div > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.home main > .trial .inner > div > div p {
	width: calc(100% - 220px);
}
.home main > .trial .inner > div > div figure {
	width: 180px;
}
.home main > .trial .inner > div > div figure img {
	display: block;
	width: 100%;
	border-radius: 5px;
}
.home main > .trial .inner > .link {
	display: block;
	width: 280px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	background-color: #2b5486;
	margin: 48px auto 0;
	padding: 16px 0;
	box-shadow: 1px 1px 2px 0 #333;
}
.home main .information {
	padding: 40px 0;
	background-color: #f7f7f7;
}
.home main .information .inner .banners > a img {
	max-width: 760px;
	margin: auto;
	display: block;
	margin-bottom: 32px;
}
.home main .information .inner .banners ul {
	display: flex;
	justify-content: center;
}
.home main .information .inner .banners ul li {
	width: 24%;
	margin: 0 1%;
}
.home main .information .inner .banners a {
	transition: all ease .3s;
}
.home main .information .inner .banners a:hover {
	opacity: .8;
}
.home main .information .inner .banners a img {
	width: 100%;
}
.home main .information .inner .news {
	width: 640px;
	margin: auto;
}
.home main .information .inner .news h2 {
	text-align: center;
	margin-bottom: 32px;
	font-size: 18px;
	font-weight: bold;
	color: #2b5486;
}
.home main .information .inner .news ul li {
	margin-bottom: 8px;
}
.home main .information .inner .news ul li a {
	display: flex;
	justify-content: space-between;
}
.home main .information .inner .news ul li a time,
.home main .information .inner .news ul li a span {
	color: #2b5486;
}
.home main .information .inner .news ul li a time {
	width: 120px;
}
.home main .information .inner .news ul li a span {
	width: calc(100% - 120px - 32px);
}
.home main .information .inner .banners .slick-prev,
.home main .information .inner .banners .slick-next,
.home main .information .inner .banners .slick-prev:before,
.home main .information .inner .banners .slick-next:before {
	color: #2b5486;
}
.home main .information .inner .banners .slick-prev:before {
	content: '\f104';
}
.home main .information .inner .banners .slick-next:before {
	content: '\f105';
}
.home main .start {
	padding: 80px 0;
}
.home main .start h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .start iframe {
	display: block;
	width: 100%;
	height: 560px;
}
.home main .start div {
	margin-top: 40px;
}
.home main .start div p:not(:last-child) {
	margin-bottom: 1em;
}
.home main .start div a {
	display: block;
	width: 240px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	background-color: #2b5486;
	margin: 32px auto 0;
	padding: 8px 0;
	box-shadow: 1px 1px 2px 0 #333;
}
.home main .start div a:hover {
	opacity: 0.9;
}
.home main .artist {
	background-color: #f7f7f7;
	padding: 80px 0;
}
.home main .artist h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .artist div iframe {
	display: block;
	width: 100%;
	height: 560px;
}
.home main .artist div p {
	margin-top: 40px;
}
.home main .artist ul.buy {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #ccc;
	display: flex;
	justify-content: center;
}
.home main .artist ul.buy li {
	margin: 0 32px;
}
.home main .artist ul.buy li a {
	display: block;
	padding: 8px 64px;
	border: 1px solid #fff;
	color: #fff;
	transition: all ease .3s;
}
.home main .artist ul.buy li a {
	padding: 8px 32px;
}
.home main .artist ul.buy li .buy {
	background-color: #fff;
	color: #2b5486;
}
.home main .artist ul.buy li .trial {
	border-color: #2b5486;
	color: #2b5486;
}
.home main .artist ul.buy li a.buy:hover {
	border-color: #2b5486;
	background-color: #2b5486;
	color: #fff;
}
.home main .artist ul.buy li a.trial:hover {
	background-color: #2b5486;
	color: #fff;
}
.home main .artist > .inner > p {
	text-align: center;
}
.home main .artist .ex {
	margin-top: 40px;
  display: flex;
	justify-content: space-between;
}
.home main .artist .ex li {
	width: 32%;
	position: relative;
	height: 450px;
	overflow: hidden;
}
.home main .artist .ex li figure img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.home main .artist .ex li h3,
.home main .artist .ex li .link,
.home main .artist .ex li .link a {
	position: relative;
	z-index: 1;
	color: #fff;
}
.home main .artist .ex li h3 {
	padding-top: 32px;
	text-align: center;
	font-size: 40px;
}
.home main .artist .ex li .link {
	position: absolute;
	bottom: 16px;
	left: 0;
	width: 100%;
	display: flex;
	justify-content: center;
}
.home main .artist .ex li .link a {
	padding: 8px 0;
	width: 160px;
	text-align: center;
	background-color: rgba(0,0,0,.5);
	transition: all ease .3s;
}
.home main .artist .ex li .link a:hover {
	background-color: rgba(0,0,0,.8);
}
.home main .inspiration {
	padding: 80px 0;
}
.home main .inspiration h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .inspiration p {
	margin-bottom: 24px;
}
.home main .inspiration .slide ul li {
	width: 1000px;
}
.home main .inspiration .slide ul li figure img {
	max-width: 1000px;
	display: block;
	margin: auto;
}
.home main .inspiration .slide .slick-prev,
.home main .inspiration .slide .slick-next,
.home main .inspiration .slide .slick-prev:before,
.home main .inspiration .slide .slick-next:before {
	color: #2b5486;
}
.home main .inspiration .slide .slick-prev:before {
	content: '\f104';
}
.home main .inspiration .slide .slick-next:before {
	content: '\f105';
}
.home main .inspiration aside {
	margin-top: 24px;
	text-align: center;
}
.home main .inspiration aside a {
	color: #2b5486;
}
.home main .inspiration aside a:hover {
	text-decoration: underline;
}
.home main .user {
	padding: 80px 0;
	background-color: #f7f7f7;
}
.home main .user h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .user ul {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
.home main .user ul li {
	width: 48%;
}
.home main .user ul li figure img {
	width: 100%;
	display: block;
}
.home main .user ul li h3 {
	text-align: center;
	margin-bottom: 8px;
}
.home main .user ul li p {
	margin-top: 8px;
	margin-bottom: 16px;
}
.home main .user ul li a {
	display: block;
	color: #2b5486;
	font-size: 14px;
	text-align: right;
}
.home main .case {
	padding: 80px 0;
}
.home main .case h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .case ul {
	padding-bottom: 16px;
}
.home main .case ul li {
	padding: 32px;
	margin: 0 24px 16px;
	box-shadow: 1px 1px 3px 0 #ccc;
}
.home main .case ul li figure {
	margin-bottom: 16px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.home main .case ul li figure img {
	display: block;
	max-height: 80px;
	max-width: 240px;
}
.home main .case ul li p {
	font-size: 16px;
	min-height: 160px;
}
.home main .contents {
	padding: 80px 0;
	background-color: #f7f7f7;
}
.home main .contents h2 {
	color: #2b5486;
	text-align: center;
	font-size: 28px;
	margin-bottom: 24px;
}
.home main .contents ul {
	display: flex;
	justify-content: space-between;
}
.home main .contents ul li {
	width: 30%;
}
.home main .contents ul li a {
	margin: auto;
	width: 140px;
	height: 140px;
	color: #2b5486;
	text-align: center;
	background-color: #fff;
	font-size: 14px;
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 1px 1px 3px 0 #ccc;
	transition: all ease .3s;
	border-radius: 3px;
}
.home main .contents ul li a:hover {
	background-color: #2b5486;
	color: #fff;
}
.home main .contents ul li p {
	font-size: 14px;
	margin-top: 16px;
}






















/*account*/
.account main {
	width: 800px;
	margin: auto;
	padding: 64px 0;
}
.account main:after {
	content: '';
	width: 0;
	height: 0;
	display: block;
	clear: both;
}
.account main #left {
	width: 400px;
	float: left;
	padding: 40px 20px;
}
.account main #right {
	width: 400px;
	float: right;
	padding: 40px 32px;
}
.account main #right.gray {
	background-color: #eee;
}
.account main #left h2 {
	font-size: 16px;
	text-align: center;
	font-weight: bold;
	margin: 32px 0;
}
.account main #left p {
	text-align: center;
	font-size: 13px;
	color: #898989;
}
.account main #left a {
	width: 200px;
	background-color: #555;
	color: #fff;
	display: block;
	margin: auto;
	margin-top: 32px;
	padding: 8px 0;
	text-align: center;
	font-size: 13px;
	border-radius: 3px;
}
.account main #right h2 {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 32px;
}
.account main #right form [type="text"],
.account main #right form [type="password"] {
	width: 100%;
	display: block;
	margin: 6px 0;
	border: 1px solid #898989;
	padding: 8px;
	font-size: 14px;
	border-radius: 3px;
}
.account main #right form [name="lname"],
.account main #right form [name="fname"],
.account main #right form [name="lname_kana"],
.account main #right form [name="fname_kana"] {
	width: 48%;
	display: inline-block;
}
.account main .error {
	color: #f55;
	font-size: 12px;
	margin-top: 6px;
	margin-bottom: 2px;
}
.account main #right a {
	color: #36a;
	font-size: 13px;
}
.account main #right form {
	margin-bottom: 16px;
	margin-top: 32px;
}
.account main #right form ul li {
	margin-bottom: 24px;
}
.account main #right form ul li span {
	font-size: 12px;
	margin-left: 8px;
	color: #36a;
}
.account main #right form [type="submit"] {
	cursor: pointer;
	width: 160px;
	background-color: #555;
	color: #fff;
	display: block;
	margin-top: 32px;
	padding: 8px 0;
	text-align: center;
	font-size: 13px;
	border-radius: 3px;
}
/*forget*/
.forget main #right aside {
	margin-top: 32px;
	font-size: 14px;
	background-color: #f5f5f5;
	padding: 8px;
}
.register-msg main #right p {
	font-weight: bold;
	font-size: 18px;
	line-height: 2em;
	margin-bottom: 32px;
}
.register-msg main #right a {
	width: 160px;
	background-color: #555;
	color: #fff;
	display: block;
	margin-top: 32px;
	padding: 4px;
	text-align: center;
	font-size: 13px;
	border-radius: 3px;
}
.account-mp main {
	margin: auto;
	padding: 64px 0;
	width: 1200px;
	padding-top: 124px!important;
}
.account-mp main h2 {
	font-size: 20px;
}
.account-mp main #wrap {
	margin-top: 40px;
}
.account-mp main #wrap:after {
	content: '';
	display: block;
	clear: both;
}
.account-mp main #wrap #sidebar {
	float: left;
	background-color: #F7F7F7;
	width: 240px;
}
.account-mp main #wrap #content {
	width: 900px;
	float: right;
}
.account-mp main #wrap #sidebar ul {
	margin-bottom: 120px;
}
.account-mp main #wrap #sidebar ul li {
	border-bottom: 1px solid #aaa;
}
.account-mp main #wrap #sidebar ul li a {
	display: block;
	padding: 16px 12px;
	color: #898989;
}
.account-mp main #wrap #sidebar ul li:nth-child(5) a:before {
	font-family: 'Font Awesome 5 Pro';
	content: '\f13e';
	margin-right: 8px;
}
.account-mp main #wrap #sidebar a:hover {
	font-weight: bold;
}
.account-mp main #wrap #sidebar ul li a.current {
	font-weight: bold;
	color: #555;
}
.account-mp main #wrap #sidebar > a {
	display: block;
	padding: 8px 12px;
	color: #898989;
}
.account-mp main #wrap #content h3 {
	padding: 16px 0;
	border-bottom: 1px solid #898989;
	margin-bottom: 16px;
	font-weight: bold;
}
.account-mp main #wrap #content table {
	width: 100%;
	margin-bottom: 40px;
}
.account-mp main #wrap #content table th,
.account-mp main #wrap #content table td {
	text-align: left;
	padding: 8px 0;
	font-size: 14px;
	vertical-align: top;
}
.account-mp main #wrap #content table th {
	width: 240px;
}
.account-mp main #wrap #content table td [type="text"],
.account-mp main #wrap #content table td [type="password"],
.account-mp main #wrap #content table td textarea,
.account-mp main #wrap #content table td select {
	border: 1px solid #aaa;
	padding: 8px;
	border-radius: 3px;
	width: 49%;
	margin-right: 1%;
}
.account-mp main #wrap #content table td select {
	padding: 3px;
}
.account-mp.account-home #wrap #content table td [name="zipcode"] {
	margin-bottom: 6px;
}
.account-mp main #wrap #content table td textarea {
	width: 100%;
	height: 240px;
}
.account-mp main #wrap #content [type="submit"] {
	background-color: #555;
	color: #fff;
	cursor: pointer;
	padding: 8px 0;
	width: 200px;
	border-radius: 3px;
}
.account-mp main #wrap #content [type="submit"]:hover {
	background-color: #333;
}
.account-mp.tv main #wrap #content .other-urls {
	margin-bottom: 8px;
}
.account-mp.tv main #wrap #content table td ul li {
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}
.account-mp.tv main #wrap #content table td ul li .tp {
	width: 32px;
	height: 32px;
	margin-right: 16px;
}
.account-mp.tv main #wrap #content table td ul li .tp img {
	width: 100%;
}
.account-mp.tv main #wrap #content table td ul li .tp + span {
	width: calc(100% - 48px);
}
.account-mp.tv main #wrap #content table td ul li .tp + span [type="text"] {
	width: 100%;
}
.account-mp.tv main #wrap #content #add-url {
	cursor: pointer;
	display: block;
	width: 32px;
	text-align: center;
	line-height: 32px;
	border: 1px solid #aaa;
	border-radius: 3px;
}
.account-mp.tv main #wrap #content #add-url:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f067';
}
.account-mp.usage main #wrap #content h4 {
	margin-bottom: 16px;
}
.account-mp.usage main #wrap #content .usage {
	margin-bottom: 56px;
}
.account-mp.usage main #wrap #content .usage p {
	font-size: 14px;
}
.account-mp.account-home main #wrap #content table td .icon {
	position: relative;
	width: 100px;
	padding: 10px;
	border: 1px solid #aaa;
	margin-bottom: 6px;
}
.account-mp.account-home main #wrap #content table td .icon img {
	width: 80px;
}
.account-mp.account-home main #wrap #content table td .icon .del {
	position: absolute;
	display: block;
	color: #fff;
	text-align: center;
	top: 0;
	right: 0;
	width: 20px;
	cursor: pointer;
	line-height: 20px;
	background-color: #f55;
}
.account-mp.account-home main #wrap #content table td .icon .del:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f00d';
}
.account-mp.account-home main #wrap #content table td .icon .del:hover {
	opacity: .8;
}
.account-mp.tv main #wrap #content h3 {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 8px;
}
.account-mp.tv main #wrap #content h3 a {
	font-size: 13px;
	background-color: #2b5486;
	color: #fff;
	padding: 6px 8px;
	border-radius: 3px;
}
.account-mp.tv main #wrap #content h3 a:after {
	content: '\f08e';
	font-family: 'Font Awesome 5 Pro';
}
.account-mp.tv main #wrap #content h3 a:hover {
	opacity: .8;
}
.account-mp.lisence main #wrap #content ul li {
	margin-bottom: 16px;
	padding: 8px;
	background-color: #f7f7f7;
}
.account-mp.lisence main #wrap #content ul li p {
	margin-bottom: 4px;
}
.account-mp.manual main #content ul li {
	margin-bottom: 16px;
}
.account-mp.manual main #content ul li a {
	color: #36a;
	text-decoration: underline;
}
/*buy*/
.buy main .top-view {
	height: 300px;
	background-image: url(/img/bg-buy.jpg);
	background-position: center;
	background-size: cover;
}
.buy main .items {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
}
.buy main .items > div {
	width: 40%;
	border: 1px solid #ccc;
	padding: 32px 0;
	text-align: center;
}
.buy main .items > div img {
	display: block;
	margin: auto;
	width: 100%;
	max-width: 300px;
}
.buy main .items > div h2 {
	text-align: center;
	margin: 32px 0 8px;
}
.buy main .items > div .price {
	text-align: center;
	margin-bottom: 32px;
}
.buy main .items > div aside {
	margin-bottom: 32px;
}
.buy main .items > div .spec {
	line-height: 1.2em;
}
.buy main .items > div .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 8px;
}
.buy main .items > div .link a {
	color: #2b5486;
}
.buy main .items > div .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.buy main .items > div .btn {
	display: block;
	background-color: #2b5486;
	color: #fff;
	padding: 14px 0;
	width: 200px;
	text-align: center;
	border-radius: 4px;
	margin: auto;
	margin-top: 32px;
}
.buy main .items > div .btn + .btn {
	margin-top: 16px;
}
.buy main .upgrade {
	margin-top: 64px;
	-js-display: flex;
	display: flex;
	justify-content: center;
}
.buy main .upgrade .img {
	width: 300px;
	text-align: center;
}
.buy main .upgrade .cnt {
	width: 500px;
	margin-left: 24px;
	padding: 40px 0;
}
.buy main .upgrade .cnt h2 {
	margin-bottom: 32px;
}
.buy main .upgrade .cnt .link {
	margin-top: 40px;
	text-align: right;
}
.buy main .upgrade .cnt .link a {
	display: inline-block;
	width: 200px;
	padding: 14px 0;
	color: #2b5486;
	text-align: center;
	box-shadow: 1px 1px 3px 0 #aaa;
	border-radius: 4px;
}
.buy main .lesson {
	padding-top: 80px;
}
.buy main .lesson > .inner {
	border: 1px solid #ccc;
	padding: 24px;
}
.buy main .lesson > .inner h2 {
	color: #2b5486;
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}
.buy main .lesson > .inner ul li {
	display: flex;
	margin-bottom: 8px;
}
.buy main .lesson > .inner ul li h3 {
	margin-right: 40px;
	font-size: 16px;
}
.buy main .lesson > .inner ul li h3:before {
	content: 'Ã£Æ’Â»';
}
.buy main .lesson > .inner ul li p {
	font-size: 16px;
}
.buy main .lesson > .inner h2 span {
	margin-left: 24px;
	font-size: 16px;
}
.buy main .lesson > .inner aside {
	margin-top: 24px;
}
.buy main .lesson > .inner .order {
	text-align: right;
	margin-top: 24px;
}
.buy main .lesson > .inner .order a {
	display: inline-block;
	background-color: #2b5486;
	color: #fff;
	padding: 14px 0;
	width: 200px;
	text-align: center;
	border-radius: 4px;
}
.buy main .prime > .inner {
	border: 1px solid #ccc;
	padding: 24px;
}
.buy main .prime > .inner h2 {
	color: #2b5486;
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}
.buy main .prime > .inner ul li {
	display: flex;
	margin-bottom: 8px;
}
.buy main .prime > .inner ul li h3 {
	margin-right: 40px;
	font-size: 16px;
}
.buy main .prime > .inner ul li h3:before {
	content: 'Ã£Æ’Â»';
}
.buy main .prime > .inner ul li p {
	font-size: 16px;
}
.buy main .prime > .inner h2 span {
	margin-left: 24px;
	font-size: 16px;
	width: calc(100% - 200px);
}
.buy main .prime > .inner aside {
	margin-top: 24px;
}
.buy main .prime > .inner .order {
	text-align: right;
	margin-top: 24px;
}
.buy main .prime > .inner .order a {
	display: inline-block;
	width: 200px;
	padding: 14px 0;
	color: #2b5486;
	text-align: center;
	box-shadow: 1px 1px 3px 0 #aaa;
	border-radius: 4px;
}

.buy main .pay {
	margin-top: 80px;
	padding: 24px;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.buy main .pay h2 {
	margin-bottom: 24px;
}
.buy main .pay p {
	padding: 0 24px;
	margin-top: 24px;
}
/*support*/
.support main {
	padding-bottom: 0;
}
.support main .top-view {
	height: 300px;
	background-image: url(/img/bg-buy.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.support main .top-view p {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
}
.support main .contents {
	margin-top: 40px;
}
.support main .contents ul {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
}
.support main .contents ul li {
	width: 23%;
}
.support main .contents ul li a {
	display: block;
	padding: 24px 32px;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #ccc;
}
.support main .contents ul li a img {
	display: block;
	margin: auto;
	width: 80px;
}
.support main .contents ul li a h2 {
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	color: #2b5486;
	margin: 10px 0 24px;
}
.support main .contents ul li a p {
	font-size: 14px;
}
.support main .tv {
	margin: 40px 0;
	text-align: center;
}
.support main .tv img {
	border-radius: 4px;
}
.support main .articles {
	padding: 24px;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #ccc;
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.support main .articles > div {
	width: 48%;
}
.support main .articles > div h2 {
	font-size: 24px;
	font-weight: bold;
	color: #2b5486;
	padding-bottom: 24px;
	margin-bottom: 24px;
	border-bottom: 1px solid #2b5486;
}
.support main .articles > div ul {
	padding: 0 16px;
}
.support main .articles > div ul li {
	margin-bottom: 16px;
}
.support main .articles > div ul li a {
	color: #2b5486;
	display: flex;
}
.support main .articles > div ul li a:before {
	font-family: 'Font Awesome 5 Pro';
	content: '\f0da';
	margin-right: 16px;
}
/*support - download*/
.support-download main {
	padding-bottom: 0;
}
.support-download main .top-view {
	height: 300px;
	background-image: url(/img/bg-buy.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.support-download main .top-view p {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
}
/*live*/
.live main .live-header {
	height: 300px;
	background-image: url(/img/bg-live.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.live main .live-header p {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
}
.live main .live-header div h2,
.live main .live-header div h3,
.live main .live-header div #count_down {
	color: #fff;
	text-align: center;
}
.live main .live-header div h2 {
	font-size: 40px;
	font-weight: bold;
}
.live main .live-header div h3 {
	font-size: 24px;
	margin-bottom: 8px;
}
.live main .live-header div #count_down {
	font-size: 36px;
	font-weight: bold;
}
.live main .live-category {
	background-color: #2b5486;
}
.live main .live-category ul {
	display: flex;
	padding: 16px 32px;
	justify-content: flex-end;
	justify-content: right;
}
.live main .live-category ul li {
	margin-left: 16px;
}
.live main .live-category ul li a {
	display: block;
	padding: 12px 24px;
	color: #fff;
	font-size: 12px;
	border-radius: 4px;
}
.live main .live-category ul li a:hover {
	color: #2b5486;
	box-shadow: none;
}
.live main .live-category ul li a.current {
	background-color: #fff;
	color: #2b5486;
}
.live main .live-category ul li a:not(.current) {
	box-shadow: 1px 1px 3px 0 #333;
	background-color: #2b5486;
}
.live main .live-category ul li a:not(.current):hover {
	background-color: #fff;
}
.live main .live-list {
	margin: 64px 0;
}
.live main .live-list .switch {
	display: flex;
	justify-content: center;
	margin-bottom: 32px;
}
.live main .live-list .switch span {
	margin: 0 16px;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #ccc;
	padding: 8px 0;
	width: 240px;
	text-align: center;
	cursor: pointer;
	color: #ccc;
}
.live main .live-list .switch span.current {
	background-color: #2b5486;
	color: #fff;
}
.live main .live-list .switch span:hover {
	background-color: #2b5486;
	color: #fff;
}
.live main .live-list ul {
	display: flex;
	flex-wrap: wrap;
}
.live main .live-list ul li {
	width: 315px;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #ccc;
	margin: 0 9px;
	margin-bottom: 32px;
}
.live main .live-list ul li.past {
	display: none;
}
.live main .live-list ul li .default,
.live main .live-list ul li .img {
	height: 100px;
	width: 100%;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	margin-bottom: 16px;
}
.live main .live-list ul li .img img {
	width: 100%;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}
.live main .live-list ul li .default {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #2b5486;
}
.live main .live-list ul li .default span {
	color: #fff;
	display: block;
	text-align: center;
}
.live main .live-list ul li h3 {
	padding: 0 16px;
	font-size: 16px;
	margin-bottom: 16px;
}
.live main .live-list ul li .date,
.live main .live-list ul li .place,
.live main .live-list ul li .time {
	padding: 0 16px;
	font-size: 13px;
}
.live main .live-list ul li .detail {
	font-size: 13px;
	padding: 0 16px;
	margin: 16px 0 24px;
}
.live main .live-list ul li .link {
	padding: 0 16px 16px;
	text-align: right;
}
.live main .live-list ul li .link a {
	display: inline-block;
	font-size: 14px;
	color: #fff;
	background-color: #2b5486;
	padding: 6px 16px;
	min-width: 100px;
	border-radius: 4px;
	text-align: center;
}
.live main .live-list ul li .link a:hover {
	opacity: .8;
}
/*blog*/
.blog main .blog-header {
	height: 300px;
	background-image: url(/img/bg-buy.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.blog main .blog-header h2 {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
	text-align: center;
}
.blog main .blog-header h2 span {
	color: #fff;
	display: block;
	margin-top: 8px;
	text-align: center;
}
.blog main .paging {
	margin: 40px 0;
}
.blog main .paging ul {
	-js-display: flex;
	display: flex;
}
.blog main .paging ul li {
	margin-right: 8px;
}
.blog main .paging ul li a {
	box-shadow: 1px 1px 3px 0 #ccc;
	border-radius: 4px;
	display: block;
	text-align: center;
	width: 40px;
	line-height: 30px;
}
.blog main .paging ul li a.current {
	color: #fff;
	background-color: #2b5486;
}
.blog main .inner {
	width: 880px;
}
.blog main .inner .posts li {
	padding: 32px;
	border-radius: 4px;
	box-shadow: 1px 1px 5px 0 #ccc;
	margin-bottom: 32px;
}
.blog main .inner .posts li .title {
	font-size: 18px;
	margin: 8px 0;
}
.blog main .inner .posts li .excerpt {
	width: 600px;
	margin: 32px auto;
}
.blog main .inner .posts li .read-more {
	text-align: right;
	margin-top: 32px;
}
.blog main .inner .posts li .read-more a {
	font-size: 14px;
	background-color: #f5f5f5;
	display: inline-block;
	padding: 12px 24px;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #ccc;
}
.blog main .inner .posts li .read-more a:hover {
	color: #fff;
	background-color: #2b5486;
}
.blog main .inner .posts li .excerpt p {
	margin: 8px 0;
}
.blog main .inner .posts li .excerpt * {
	max-width: 100%;
}
.blog main .inner .posts .share {
	margin-top: 10px;
	margin-bottom: 10px;
}
.blog main .inner .posts .share .sharebutton {
	display: inline-block;
	padding: 3px 10px 3px 26px;
	margin: 2px 2px;
	border: #ccc solid 1px;
	background: #f8f8f8;
	font: normal 12px/18px open-sans,sans-serif;
	color: #333;
	white-space: nowrap;
	text-decoration: none;
	background-size: 16px!important;
	background-repeat: no-repeat!important;
	background-position: 4px 4px!important;
}
.blog main .inner .posts .share .sharebutton.twitter {
	background: url(/img/sns/icon_twitter.png);
}
.blog main .inner .posts .share .sharebutton.facebook {
	background: url(/img/sns/icon_facebook.png);
}
.blog main .inner .posts .share .sharebutton.linkedin {
	background: url(/img/sns/icon_linkedin.png);
}
.blog main .inner .posts .share .sharebutton.google {
	background: url(/img/sns/icon_google.png);
}
.blog main .inner .posts .share .sharebutton:hover {
	background-color: #ddd;
}
.blog-detail main .content {
	padding: 32px;
	border-radius: 4px;
	box-shadow: 1px 1px 5px 0 #ccc;
	margin-top: 40px;
}
.blog-detail main .content .title {
	font-size: 18px;
	margin: 8px 0;
}
.blog-detail main .content .share {
	margin-top: 10px;
	margin-bottom: 10px;
}
.blog-detail main .content .share .sharebutton {
	display: inline-block;
	padding: 3px 10px 3px 26px;
	margin: 2px 2px;
	border: #ccc solid 1px;
	background: #f8f8f8;
	font: normal 12px/18px open-sans,sans-serif;
	color: #333;
	white-space: nowrap;
	text-decoration: none;
	background-size: 16px!important;
	background-repeat: no-repeat!important;
	background-position: 4px 4px!important;
}
.blog-detail main .content .share .sharebutton.twitter {
	background: url(/img/sns/icon_twitter.png);
}
.blog-detail main .content .share .sharebutton.facebook {
	background: url(/img/sns/icon_facebook.png);
}
.blog-detail main .content .share .sharebutton.linkedin {
	background: url(/img/sns/icon_linkedin.png);
}
.blog-detail main .content .share .sharebutton.google {
	background: url(/img/sns/icon_google.png);
}
.blog-detail main .content .share .sharebutton:hover {
	background-color: #ddd;
}
.blog-detail main .link a {
	display: block;
	width: 160px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	background-color: #2b5486;
	margin: 40px 0;
	padding: 8px 0;
	box-shadow: 1px 1px 2px 0 #333;
}
/*product*/
.product main .product-header {
	height: 300px;
	background-image: url(/img/bg-product.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.product.environment main .product-header {
	background-image: url(/img/bg-product-environment.jpg?01);
	background-position: bottom;
}
.product main .product-header:before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 300px;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,.4);
}
.product.environment main .product-header:before {
	content: none;
}
.product main .product-header div {
	position: static;
	z-index: 2;
}
.product main .product-header div h2 {
	font-size: 48px;
	text-align: center;
	color: #fff;
}
.product main .product-header div p {
	font-size: 20px;
	text-align: center;
	color: #fff;
}
.product main .contents .pages ul {
	-js-display: flex;
	display: flex;
	justify-content: center;
}
.product main .contents .pages ul li {
	width: 16.5%;
}
.product main .contents .pages ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	background-color: #2b5486;
	color: #fff;
	text-align: center;
	height: 4em;
	line-height: 1.2em;
}
.product main .contents .pages ul li.current a {
	background-color: #fff;
	color: #2b5486;
}
.product main .contents .pages ul li.lr a {
	border-bottom-left-radius: 4px;
}
.product main .contents .pages ul li.rr a {
	border-bottom-right-radius: 4px;
}
.product main .contents .pages ul li.br a {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}
/*product index*/
.product.overview main .contents .about {
	margin-top: 32px;
	padding-bottom: 32px;
	box-shadow: 0 3px 3px 0 #ccc;
	position: relative;
	z-index: 3;
}
.product.overview main .contents .about .head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}
.product.overview main .contents .about .head a {
	color: #fff;
	display: block;
	text-align: center;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 20px;
	border-radius: 4px;
}
.product.overview main .contents .about h2 {
	-js-display: flex;
	display: flex;
	align-items: center;
	font-size: 28px;
	font-weight: bold;
}
.product.overview main .contents .about h2 img {
	width: 32px;
	margin-right: 16px;
}
.product.overview main .contents .about .flex {
	-js-display: flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.product.overview main .contents .about .flex div {
	width: 55%;
}
.product.overview main .contents .about .flex iframe {
	display: block;
	width: 40%;
	height: 224px;
}
.product.overview main .contents .about .flex div p {
	font-size: 14px;
}
.product.overview main .contents .about .flex div p + p {
	margin-top: 1em;
}
.product.overview main .contents.rendering {
	background-color: #f5f5f5;
	padding-bottom: 64px;
}
.product.overview main .contents.rendering .head {
	margin: auto;
	padding: 64px 0;
}
.product.overview main .contents.rendering .head iframe {
	width: 800px;
	display: block;
	margin: 0 auto 40px;
	height: 450px;
}
.product.overview main .contents.rendering .head h2 {
	text-align: center;
	font-weight: bold;
	margin-bottom: 40px;
}
.product.overview main .contents.rendering .head p {
	width: 680px;
	margin: auto;
}
.product.overview main .contents.rendering .flex {
	-js-display: flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 64px;
}
.product.overview main .contents.rendering .flex.rr {
	flex-direction: row-reverse;
}
.product.overview main .contents.rendering .flex iframe,
.product.overview main .contents.rendering .flex img {
	width: 55%;
	display: block;
}
.product.overview main .contents.rendering .flex > div {
	width: 40%;
}
.product.overview main .contents.rendering .flex iframe {
	height: 300px;
}
.product.overview main .contents.rendering .flex > div h3 {
	font-weight: bold;
	margin-bottom: 16px;
}
.product.overview main .contents.rendering .flex > div a {
	display: inline-block;
	background-color: #2b5486;
	text-align: center;
	color: #fff;
	padding: 8px 40px;
	margin-top: 16px;
	border-radius: 4px;
}
.product.overview main .contents.flow .head {
	width: 680px;
	margin: auto;
	padding: 64px 0;
}
.product.overview main .contents.flow .head h2 {
	text-align: center;
	font-weight: bold;
}
.product.overview main .contents.flow .flex {
	-js-display: flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 800px;
	margin: auto;
	margin-bottom: 48px;
}
.product.overview main .contents.flow .flex > div {
	width: 50%;
}
.product.overview main .contents.flow .flex > div h3 {
	font-weight: bold;
	margin-bottom: 8px;
}
.product.overview main .contents.flow .flex > img {
	display: block;
	width: 25%;
}
.product.overview main .contents.flow .flex .icon {
	width: 25%;
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.product.overview main .contents.flow .flex .icon li {
	width: 32%;
	text-align: center;
}
.product.overview main .contents.flow .flex .icon li img {
	display: block;
	margin-bottom: 8px;
	width: 100%;
}
.product.overview main .contents.vr {
	padding-bottom: 40px;
}
.product.overview main .contents.vr #panorama {
	height: 400px;
}
.product.overview main .contents.vr .head {
	width: 680px;
	margin: auto;
	padding: 64px 0 8px;
}
.product.overview main .contents.vr .head h2 {
	text-align: center;
	font-weight: bold;
}
.product.overview main .contents.vr .flex {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.product.overview main .contents.vr .flex .img {
	display: block;
	width: 33%;
}
.product.overview main .contents.vr .flex .img li img {
	width: 80%;
	display: inline-block;
}
.product.overview main .contents.vr .flex > div {
	width: 65%;
	text-align: right;
}
.product.overview main .contents.vr .flex > div p {
	text-align: left;
	margin-bottom: 16px;
}
.product.overview main .contents.vr .flex > div > a {
	display: inline-block;
	background-color: #2b5486;
	text-align: center;
	color: #fff;
	padding: 8px 40px;
	margin-top: 16px;
	border-radius: 4px;
}
.product.overview main .contents.mylumion {
	padding-bottom: 64px;
	box-shadow: 0 3px 3px 0 #ccc;
}
.product.overview main .contents.mylumion .head {
	width: 680px;
	margin: auto;
	padding: 64px 0 8px;
}
.product.overview main .contents.mylumion .head h2 {
	text-align: center;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 16px;
}
.product.overview main .contents.mylumion > div {
	text-align: center;
}
.product.overview main .contents.mylumion > div p {
	text-align: center;
	margin-bottom: 24px;
}
.product.overview main .contents.mylumion > div a {
	display: inline-block;
	background-color: #2b5486;
	text-align: center;
	color: #fff;
	padding: 8px 40px;
	margin-top: 16px;
	border-radius: 4px;
}
.product.overview main .contents.buy {
	text-align: center;
	margin-top: 64px;
}
.product.overview main .contents.buy a {
	display: inline-block;
	text-align: center;
	background-color: #f5f5f5;
	padding: 8px 0;
	width: 160px;
	margin: 0 12px;
	border-radius: 4px;
}
.product.overview main .contents.buy a:last-child {
	background-color: #2b5486;
	color: #fff;
}
.product.overview main .slide {
	background-color: #000;
	margin-bottom: 64px;
}
.product.overview main .slide ul {
	width: 800px;
	margin: auto;
}
.product.overview main .slide ul li img {
	width: 100%;
	height: 400px;
}
.product.overview main .slide .slick-prev {
	left: -80px!important;
}
.product.overview main .slide .slick-next {
	left: 830px!important;
}
.product.overview main .slide .slick-prev:before,
.product.overview main .slide .slick-next:before {
	display: inline-block;
	background-color: #fff;
	width: 48px;
	line-height: 48px;
	color: #2b5486;
	font-size: 40px;
	border-radius: 4px;
}
.product.environment main > h3 {
	text-align: center;
	font-weight: bold;
	font-size: 24px;
}
.product.environment main .outline {
	display: flex;
	width: 1100px;
	margin: 80px auto 40px;
	justify-content: space-between;
}
.product.environment main .outline p {
	width: 48%;
}
.product.environment main .bench-mark {
	width: 1100px;
	margin: 40px auto;
}
.product.environment main .bench-mark > p {
	margin-bottom: 1em;
}
.product.environment main .bench-mark > .link {
	margin-bottom: 1em;
	padding: 32px 0;
}
.product.environment main .bench-mark > .link a {
	background-color: #2b5486;
	color: #fff;
	border-radius: 4px;
	text-align: center;
box-shadow: 1px 1px 2px 0 #aaa;
	padding: 8px 0;
	width: 240px;
	display: block;
	margin: auto;
}
.product.environment main .bench-mark > .link a:hover {
	opacity: .9;
}
.product.environment main .bench-mark > ol {
	padding-left: 20px;
}
.product.environment main .bench-mark > ol li {
	list-style: decimal;
	padding-left: 8px;
}
.product.environment main .optimaze {
	background-color: #f9f9f9;
	margin-bottom: 64px;
}
.product.environment main .optimaze .inner {
	padding: 40px 0;
	width: 1100px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.product.environment main .optimaze .inner > div,
.product.environment main .optimaze .inner > figure {
	width: 47%;
}
.product.environment main .optimaze .inner > figure img {
	width: 100%;
}
.product.environment main .optimaze .inner > div > h3 {
	margin-bottom: 16px;
	font-weight: bold;
}
.product.environment main .optimaze .inner > div > p {
	margin-bottom: 1em;
}
.product.environment main .optimaze .inner > div > .link a {
background-color: #2b5486;
	color: #fff;
	border-radius: 4px;
	text-align: center;
box-shadow: 1px 1px 2px 0 #aaa;
	padding: 8px 0;
	width: 240px;
	display: block;
}
.product.environment main .optimaze .inner > div > .link a:hover {
	opacity: .9;
}
.product.environment main .faq {
	width: 1100px;
	margin: 40px auto 64px;
}
.product.environment main .faq > ul > li {
	background-color: #f4f4f4;
	border: 1px solid #d9d9d9;
	margin-bottom: 16px;
}
.product.environment main .faq > ul > li .a {
	display: none;
}
.product.environment main .faq > ul > li .q {
	font-size: 18px;
	padding: 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	font-weight: bold;
}
.product.environment main .faq > ul > li .q:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f078';
}
.product.environment main .faq > ul > li .q.open:after {
	content: '\f077';
}
.product.environment main .faq > ul > li:hover .q:after {
	color: #000;
}
.product.environment main .faq > ul > li .a {
	padding: 0 16px 16px;
}
.product.environment main .faq > ul > li .a > p:not(:last-child) {
	margin-bottom: 16px;
}
.product.environment main .faq > ul > li .a > p em {
	font-weight: bold;
}
.product.environment main .faq > ul > li .a > p a {
	color: #2b5486;
}
.product.environment main .faq > ul > li .a > p a:hover {
	text-decoration: underline;
}
.product.environment main .faq > ul > li .a > ol,
.product.environment main .faq > ul > li .a > ul {
	padding-left: 20px;
	margin-bottom: 16px;
}
.product.environment main .faq > ul > li .a > ol li {
	list-style: decimal;
}
.product.environment main .faq > ul > li .a > ul li {
	list-style: lower-latin;
}
.product.environment main .tab-wrap {
	width: 1100px;
	margin: 40px auto 80px;
	border: 1px solid #ccc;
}
.product.environment main .tab-wrap .tabs ul {
	display: flex;
	background-color: #f4f4f4;
}
.product.environment main .tab-wrap .tabs ul li {
	width: 100%;
	text-align: center;
	border-bottom: 1px solid #ccc;
	padding: 16px 24px;
	cursor: pointer;
}
.product.environment main .tab-wrap .tabs ul li:not(:last-child) {
	border-right: 1px solid #ccc;
}
.product.environment main .tab-wrap .tabs ul li.current {
	border-bottom-color: #f1f1f1;
	background-color: #fff;
}
.product.environment main .tab-wrap .pages {
	padding: 24px;
}
.product.environment main .tab-wrap .pages ul li {
		display: none!important;
}
.product.environment main .tab-wrap .pages ul li.current {
		display: list-item!important;
}
.product.environment main .tab-wrap.env .pages table {
	border-collapse: collapse;
	width: 100%;
}
.product.environment main .tab-wrap.env .pages table tr {
	border-bottom: 1px solid #ccc;
}
.product.environment main .tab-wrap.env .pages table th,
.product.environment main .tab-wrap.env .pages table td {
	font-size: 14px;
	padding: 8px;
	vertical-align: top;
}
.product.environment main .tab-wrap.env .pages table th {
	width: 360px;
}
.product.environment main .tab-wrap.env .pages table td a {
	color: #2b5486;
	text-decoration: underline;
}
.product.environment main .tab-wrap.env .pages aside {
	color: #777;
	font-size: 12px;
	margin-top: 16px;
}
.product.environment main .tab-wrap.env .pages aside a {
	color: #2b5486;
	text-decoration: underline;
}
.product.environment main .tab-wrap.pc .pages ul li > h4 {
	margin: 32px 0 24px;
	margin-left: 40px;
}
.product.environment main .tab-wrap.pc .pages ul li > div {
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}
.product.environment main .tab-wrap.pc .pages ul li > div img {
	width: 300px;
}
.product.environment main .tab-wrap.pc .pages ul li > div table {
	width: 720px;
	border-collapse: collapse;
}
.product.environment main .tab-wrap.pc .pages ul li > div table caption {
	font-weight: bold;
	text-align: left;
	padding-bottom: 16px;
}
.product.environment main .tab-wrap.pc .pages ul li > div table tr:not(:last-child) {
	border-bottom: 1px solid #ccc;
}
.product.environment main .tab-wrap.pc .pages ul li > div table th,
.product.environment main .tab-wrap.pc .pages ul li > div table td {
	padding: 8px 0;
	font-size: 14px;
}
.product.environment main .tab-wrap.pc .pages ul li > div table th {
	width: 160px;
}
.product.environment main .tab-wrap.pc .pages ul li > div table tfoot td {
	padding-top: 16px;
}
.product.environment main .tab-wrap.pc .pages ul li > div table tfoot td a {
	color: #2b5486;
	text-decoration: underline;
	font-weight: bold;
	font-size: 16px;
}
.product.whatsnew main .inner {
	width: 1100px;
	min-width: 1100px;
	margin: auto;
}
.product.whatsnew {
	line-height: 1.7;
}
.product.whatsnew .pages {
	width: 1000px!important;
	min-width: initial!important;
}
.product.whatsnew #breadclumb{
	margin-bottom: 0px;
}
.product.whatsnew main .top-bg{
	background-image: url(/img/product/whatsnew/materials_02_02259.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height:auto;
}
.product.whatsnew main .top-copy{
	padding: 120px 0px;
}
.product.whatsnew main .top-copy .inner{
	margin:50px auto;
}
.product.whatsnew main .top-copy .inner p{
	color:white;
	font-size: 25px;
	font-weight: bold;
	text-align: center;
}
.product.whatsnew main .menu{
	height:60px;
	background-color:black;
}
.product.whatsnew main .menu .menu-content{
	padding:22px 0px;
	margin-left: auto;
	margin-right: auto;
	width: 1000px;
}
.product.whatsnew main .menu .menu-content p{
	color:white;
	float:left;
	margin:0px 20px 0px 0px;
}
.product.whatsnew main .new-ver img{
	width: 1100px;
}
.product.whatsnew main .title{
	margin:30px 0px;
}
.product.whatsnew main .title p{
	font-weight: bold;
	font-size: 35px;
}
.product.whatsnew main .feature-header {
	background-color: #43768B;
	padding:50px 0px 50px 0px;
	margin-bottom: 50px;
}
.product.whatsnew main .feature-header .title {
	font-size: 30px;
	font-weight: bold;
	margin: 0;
}
.product.whatsnew main .feature-header p,
.product.whatsnew main .feature-header li {
	color: #fff;
}
.product.whatsnew main .latest iframe {
	width: 1100px;
	height: 600px;
}
.product.whatsnew main .latest h2 {
	margin-bottom: 32px;
}
.product.whatsnew main .latest h3 {
	text-align: center;
	margin-bottom: 24px;
	margin-top: 24px;
}
.product.whatsnew main .latest .box {
	width: 600px;
	margin: auto;
	padding: 24px;
	background-color: #fafafa;
	text-align: center;
	margin-bottom: 32px;
}
.product.whatsnew main .latest .box p {
	font-size: 14px;
	margin-bottom: 24px;
	text-align: left;
}
.product.whatsnew main .latest .box a {
	display: inline-block;
	padding: 16px 0;
	width: 320px;
	color: #fff;
	background-color: #2b5486;
}
.product.whatsnew main .latest .box a:hover {
	opacity: .9;
}
.product.whatsnew main .latest .s {
	width: 800px;
	margin: 0 auto 16px;
	font-size: 13px;
	color: #999;
}
.product.whatsnew main .new-ver {
	padding: 40px 0;
}
.product.whatsnew main .new-ver .flex {
	display: flex;
	justify-content: space-between;
}
.product.whatsnew main .new-ver .flex div:first-child {
	width: 68%;
	background-color: #333;
	padding: 24px;
}
.product.whatsnew main .new-ver .flex div:last-child {
	width: 30%;
}
.product.whatsnew main .new-ver .flex div img {
	width: 100%;
	display: block;
}
.product.whatsnew main .new-ver .flex div h2 {
	margin: 0;
	text-align: left;
	color: #fff;
}
.product.whatsnew main .new-ver .flex div:last-child p {
	margin-top: 24px;
	margin-bottom: 1.8em;
}
.product.whatsnew main .feature-header {
	background-color: #70A3B8;
}
.product.whatsnew main .feature-header .list {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
}
.product.whatsnew main h2 {
	margin-top: 32px;
	font-size: 28px;
	text-align: center;
	margin-bottom: 0;
}
.product.whatsnew main .new-ver p {
	text-align: center;
	font-size: 13px;
	color: #898989;
}
.product.whatsnew main .new-ver iframe {
	width: 1100px;
	height: 600px;
	margin: 32px 0;
}
.product.whatsnew main .new-ver aside {
	margin: 8px auto 32px;
	display: flex;
	justify-content: space-around;
	width: 720px;
}
.product.whatsnew main .new-ver aside a {
	display: block;
	text-align: center;
	width: 320px;
	padding: 16px 0;
	background-color: #2b5486;
	color: #fff;
}
.product.whatsnew main .new-ver aside a:hover {
	opacity: .8;
}
.product.whatsnew main .feature {
	padding-top: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #eee;
}
.product.whatsnew main .feature .inner {
	display: flex;
	justify-content: space-between;
}
.product.whatsnew main .feature .inner.reverse {
	flex-direction: row-reverse;
}
.product.whatsnew main .feature .inner .view {
	width: 480px;
}
.product.whatsnew main .feature .inner .view img,
.product.whatsnew main .feature .inner .view video {
	width: 100%;
	display: block;
}
.product.whatsnew main .feature .inner .feature-text {
	width: 560px;
}
.product.whatsnew main .feature .inner .feature-text .feature-text-sub {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 16px;
}
.product.whatsnew main .feature .inner .feature-text a {
	display: block;
	width: 280px;
	color: white;
	background-color: #43768B;
	padding: 13px 0px;
	border-radius: 2px;
	margin: 10px 0px;
	text-align: center;
	font-size: 14px;
}
.product.whatsnew main .feature .inner .feature-text a:hover {
	opacity: .8;
}
.lumion-new-p1 h3 {
	text-align: center;
	font-size: 32px;
	margin-bottom: 24px;
}
.lumion-new-p1 h3 span {
	display: block;
	text-align: center;
	font-size: 16px;
	color: #999;
}
.lumion-new-p1 ul {
	display: flex;
	justify-content: space-between;
	margin-bottom: 48px;
}
.lumion-new-p1 ul li {
	width: 32%;
}
.product.whatsnew main .lumion-new-p1 {
	width: 800px;
	margin: 0 auto 40px;
}
.product.whatsnew main .lumion-new-p1 p {
	text-align: left!important;
	margin-bottom: 1em;
}
.product.whatsnew main .feature.g {
	background-color: #f5f5f5;
}
.product.whatsnew main .feature h4 {
	width: 1100px;
	margin: 24px auto 40px;
	font-size: 22px;
}
.product.whatsnew main .feature .inner .view aside {
	font-size: 13px;
	color: #999;
	line-height: 1.4em;
	margin-top: 8px;
}
/*tutorial*/
.tutorial main .inner {
	width: 1200px;
	margin: auto;
}
.tutorial main .top-view {
	height: 300px;
	background-image: url(/img/bg-buy.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.tutorial main .top-view p {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
	text-align: center;
}
.tutorial main .left-contents {
	width: 780px;
	float: left;
	padding-top: 32px;
	box-sizing: border-box;
}
.tutorial main .right-contents {
	width: 400px;
	float: right;
	right: 0;
}
.tutorial main .right-contents .index {
	background-color: #f5f5f5;
	box-sizing: border-box;
	padding: 32px;
	width: 400px;
}
.tutorial main .right-contents h3 {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 16px;
}
.tutorial main .right-contents>ul {
	margin-bottom: 24px;
}
.tutorial main .right-contents>ul li ul {
	margin-left: 16px;
	margin-top: 4px;
	margin-bottom: 5px;
}
.tutorial main .right-contents ul li {
	padding: 4px;
}
.tutorial main .right-contents ul li ul {
	margin-left: 16px;
	margin-top: 4px;
	margin-bottom: 4px;
}
.tutorial main .right-contents ul li ul li a {
	font-size: 14px;
}
.tutorial main .right-contents ul li:before {
	font-family: 'Font Awesome 5 Pro';
	content: "\f05a";
	color: #777;
	margin-right: 4px;
}
.tutorial main .right-contents ul li ul li:before {
	font-size: 14px;
}
.tutorial main .right-contents ul li a {
	text-decoration: underline;
	color: #333;
}
.tutorial main .left-contents .intro{
	margin: 30px 0;
}
.tutorial main .left-contents .intro-left{
	margin-left: 30px;
	float:left;
}
.tutorial main .left-contents .intro img{
	width: 100px;
	float:left;
}
.tutorial main .left-contents .intro a{
	color:#36a; border-bottom:1px #36a solid;
}
.tutorial main .left-contents .tutorial-content {
	padding-bottom: 32px;
}
.tutorial main .left-contents .tutorial-content a {
	color: #36a;
	text-decoration: underline;
}
.tutorial main .left-contents .tutorial-content p{
	margin-top:10px;
}
.tutorial main .left-contents .tutorial-content:not(:first-child) {
	padding-top: 32px;
	border-top: 1px solid #ccc;
}
.tutorial main .left-contents .tutorial-content h3 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 16px;
}
.tutorial main .left-contents .tutorial-content p {
	margin-bottom: 16px;
}
.tutorial main .left-contents .tutorial-content p a {
	font-weight: bold;
}
.tutorial main .left-contents .tutorial-content .nowledgebase {
	background-color: #f5f5f5;
	padding: 16px;
	margin-bottom: 16px;
}
.tutorial main .left-contents .tutorial-content .nowledgebase p {
	font-size: 14px;
}
.tutorial main .left-contents .tutorial-content .nowledgebase ul {
	margin-left: 8px;
}
.tutorial main .left-contents .tutorial-content .nowledgebase ul li:before {
	font-family: 'Font Awesome 5 Pro';
	content: "\f05a";
	color: #777;
	font-size: 13px;
	margin-right: 4px;
}
.tutorial main .left-contents .tutorial-content .nowledgebase ul li a {
	font-size: 13px;
}
.tutorial main .left-contents .tutorial-content .inner-content h4 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 16px;
	margin-top: 16px;
	padding-top: 16px;
}
.tutorial main .left-contents #new .clearfix .col {
	width: 50%;
	float: left;
}
.tutorial main .left-contents #new .clearfix .col h4 {
	font-weight: bold;
	margin-bottom: 8px;
}
.tutorial main .left-contents #new .clearfix .col h4:not(:first-child) {
	margin-top: 24px;
}
.tutorial main .left-contents #extended .clearfix img,
.tutorial main .left-contents #depthmassmove .clearfix img,
.tutorial main .left-contents #objectlibrary .clearfix img {
	display: block;
	float: left;
	width: 400px;
	box-shadow: 0 0 5px 0 #333;
}
.tutorial main .left-contents #extended .clearfix ul,
.tutorial main .left-contents #depthmassmove .clearfix ul,
.tutorial main .left-contents #objectlibrary .clearfix ul {
	width: 350px;
	float: right;
}
/*trial*/
.trial main .top-view {
	height: 300px;
	background-image: url(/img/bg-trial.jpg);
	background-position: center;
	background-size: cover;
}
.trial main .tabs {
	margin-top: -16px;
	margin-bottom: 48px;
}
.trial main .tabs ul {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
	width: 800px;
	margin: auto;
}
.trial main .tabs ul li a.current {
	margin-top: -16px;
}
.trial main .tabs ul li a {
	display: block;
	background-color: #fff;
	width: 200px;
	color: #2b5486;
	text-align: center;
	padding: 14px 0;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.trial main .wrap:after {
	content: '';
	display: block;
	clear: both;
}
.trial main .wrap .left {
	width: 336px;
	float: left;
	border-radius: 4px;
	padding: 20px 20px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.trial main .wrap .left .catalog-download {
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 24px;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 0;
	border-radius: 4px;
}
.trial main .wrap .left img {
	display: block;
	margin: auto;
}
.trial main .wrap .left h2 {
	text-align: center;
	margin: 32px 0 16px;
}
.trial main .wrap .left .price {
	text-align: center;
	margin-bottom: 32px;
}
.trial main .wrap .left aside {
	margin-bottom: 32px;
	padding: 0 40px;
}
.trial main .wrap .left .spec {
	line-height: 1.2em;
	padding: 0 40px;
}
.trial main .wrap .left .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 32px;
}
.trial main .wrap .left .link a {
	color: #2b5486;
}
.trial main .wrap .left .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.trial main .wrap .right {
	width: 602px;
	float: right;
}
.trial main .wrap .right .list {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.trial main .wrap .right .list > div {
	width: 49%;
	padding: 16px 16px 8px;
	border: 1px solid #777;
}
.trial main .wrap .right .list > div * {
	font-size: 13px;
}
.trial main .wrap .right .list > div table,
.trial main .wrap .right .list > div table tbody,
.trial main .wrap .right .list > div table tr,
.trial main .wrap .right .list > div table th,
.trial main .wrap .right .list > div table td {
	display: block;
}
.trial main .wrap .right .list > div table th {
	font-weight: bold;
	text-align: left;
}
.trial main .wrap .right .list > div table td {
	padding-left: 1em;
	margin-bottom: 8px;
}
.trial main .wrap .right .list > div h3 {
	font-weight: bold;
	margin-bottom: 8px;
	font-size: 18px;
	border-bottom: 1px solid #aaa;
	padding-bottom: 8px;
	text-align: center;
}
.trial main form {
	margin-top: 16px;
}
.trial main form .caption {
	margin-bottom: 24px;
}
.trial main form .caption + a {
	color: #2b5486;
}
.trial main form .fc {
	margin-top: 16px;
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.trial main form .fc-group-trial {
	display: none;
}
.trial main form .fc h3 {
	font-weight: bold;
	margin-bottom: 24px;
}
.trial main form .fc dl dt {
	margin-bottom: 6px;
}
.trial main form .fc dl dd {
	margin-bottom: 24px;
}
.trial main form .fc dl dd label {
	margin-right: 16px;
}
.trial main form .fc dl dd label input {
	margin-right: 8px;
}
.trial main form .fc dl dd aside {
	color: #2b5486;
}
.trial main form .fc dl dd aside a {
	color: #2b5486;
	text-decoration: underline;
}
.trial main form .fc dl dd #auto-format {
	color: #2b5486;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-top: 8px;
	cursor: pointer;
}
.trial main form .required {
	color: #2b5486;
	margin-left: 16px;
}
.trial main form .optional {
	color: #aaa;
	margin-left: 16px;
}
.trial main form [type="text"] {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
}
.trial main form [type="date"],
.trial main form [type="time"] {
	border-bottom: 1px solid #2b5486;
	padding: 8px;
	margin-bottom: 8px;
}
.trial main form [name="zipcode"] {
	width: 200px;
	margin-bottom: 8px;
}
.trial main form [name="address"],
.trial main form [name="mail"],
.trial main form [name="mail_conf"] {
	width: 100%;
	margin: 0;
}
.trial main form textarea {
	width: 100%;
}
.trial main form .soft {
	-js-display: flex;
	display: flex;
	flex-wrap: wrap;
}
.trial main form .soft label {
	width: 30%;
	font-size: 13px;
	margin: 8px 0;
}
.trial main form .soft label [type="text"] {
	border-radius: 4px;
	border: 1px solid #ccc;
	width: 100%;
}
.trial main form .btn {
	text-align: center;
	margin-top: 40px;
}
.trial main form .btn #confirm {
	background-color: #2b5486;
	color: #fff;
	padding: 20px 32px;
	cursor: pointer;
	font-size: 16px;
	border-radius: 3px;
	width: 196px;
	line-height: 1;
}
.trial main form .btn aside {
	color: #2b5486;
	margin-top: 32px;
}
/*estimate*/
.estimate main .top-view {
	height: 300px;
	background-image: url(/img/bg-trial.jpg);
	background-position: center;
	background-size: cover;
}
.estimate main .tabs {
	margin-top: -16px;
	margin-bottom: 48px;
}
.estimate main .tabs ul {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
	width: 800px;
	margin: auto;
}
.estimate main .tabs ul li a.current {
	margin-top: -16px;
}
.estimate main .tabs ul li a {
	display: block;
	background-color: #fff;
	width: 200px;
	color: #2b5486;
	text-align: center;
	padding: 14px 0;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.estimate main .wrap:after {
	content: '';
	display: block;
	clear: both;
}
.estimate main .wrap .left {
	width: 336px;
	float: left;
}
.estimate main .wrap .left .catalog-download {
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 24px;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 0;
	border-radius: 4px;
}
.estimate main .wrap .left > div {
	border-radius: 4px;
	padding: 20px 20px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-bottom: 32px;
}
.estimate main .wrap .left img {
	display: block;
	margin: auto;
	width: 100%;
}
.estimate main .wrap .left h2 {
	text-align: center;
	margin: 32px 0 16px;
}
.estimate main .wrap .left .price {
	text-align: center;
	margin-bottom: 32px;
}
.estimate main .wrap .left aside {
	margin-bottom: 32px;
	padding: 0 40px;
}
.estimate main .wrap .left .spec {
	line-height: 1.2em;
	padding: 0 40px;
}
.estimate main .wrap .left .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 32px;
}
.estimate main .wrap .left .link a {
	color: #2b5486;
}
.estimate main .wrap .left .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.estimate main .wrap .right {
	width: 602px;
	float: right;
}
.estimate main form {
	margin-top: 16px;
}
.estimate main form .fc {
	margin-top: 16px;
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.estimate main form .fc h3 {
	font-weight: bold;
	margin-bottom: 24px;
}
.estimate main form .fc dl dt {
	margin-bottom: 6px;
}
.estimate main form .fc dl dd {
	margin-bottom: 24px;
}
.estimate main form .fc dl dd label {
	margin-right: 16px;
}
.estimate main form .fc dl dd label input {
	margin-right: 8px;
}
.estimate main form .fc dl dd.soft {
	display: flex;
	flex-wrap: wrap;
}
.estimate main form .fc dl dd.soft label {
	width: 30%;
	font-size: 13px;
}
.estimate main form .fc dl dd.soft label [type="text"] {
	width: 100%;
}
.estimate main form .fc dl dd aside {
	color: #2b5486;
}
.estimate main form .fc dl dd aside a {
	color: #2b5486;
	text-decoration: underline;
}
.estimate main form .fc dl dd #auto-format {
	color: #2b5486;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-top: 8px;
	cursor: pointer;
}
.estimate main form .fc dl dd .reason-wrap {
	border: 1px solid #aaa;
	border-radius: 3px;
}
.estimate main form .fc dl dd .reason-wrap .reason-list {
	display: none;
	padding: 12px;
	border-top: 1px solid #aaa;
	background-color: #f8f8f8;
}
.estimate main form .fc dl dd .reason-wrap .reason-title {
	display: flex;
	justify-content: space-between;
	cursor: default;
}
.estimate main form .fc dl dd .reason-wrap .reason-title:after {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Font Awesome 5 Pro';
	content: '\f107';
	border: 1px solid #aaa;
	padding: 0 2.5px;
	background-color: #ddd;
}
.estimate main form .fc dl dd .reason-wrap .reason-title #reason_select {
	padding: 8px 12px;
	font-size: 13px;
}
.estimate main form .required {
	color: #2b5486;
	margin-left: 16px;
}
.estimate main form .optional {
	color: #ccc;
	margin-left: 16px;
}
.estimate main form [type="text"] {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
}
.estimate main form [name="quantity"] {
	width: 200px;
	margin-bottom: 8px;
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
	padding: 8px;
}
.estimate main form [name="zipcode"] {
	width: 200px;
	margin-bottom: 8px;
}
.estimate main form [name="address"],
.estimate main form [name="mail"],
.estimate main form [name="mail_conf"] {
	width: 100%;
	margin: 0;
}
.estimate main form textarea {
	width: 100%;
}
.estimate main form .btn {
	text-align: center;
	margin-top: 40px;
}
.estimate main form .btn #confirm {
	background-color: #2b5486;
	color: #fff;
	padding: 8px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	cursor: pointer;
	font-size: 16px;
}
.estimate main form .btn aside {
	color: #2b5486;
	margin-top: 32px;
}
/*upgrade*/
.upgrade main .top-view {
	height: 300px;
	background-image: url(/img/bg-trial.jpg);
	background-position: center;
	background-size: cover;
}
.upgrade main .wrap:after {
	content: '';
	display: block;
	clear: both;
}
.upgrade main .wrap .left {
	width: 336px;
	float: left;
	border-radius: 4px;
	padding: 20px 20px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.upgrade main .wrap .left img {
	display: block;
	margin: auto;
}
.upgrade main .wrap .left h2 {
	text-align: center;
	margin: 32px 0 16px;
}
.upgrade main .wrap .left table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #555;
}
.upgrade main .wrap .left table * {
	font-size: 12px;
}
.upgrade main .wrap .left table th {
	background-color: #555;
	font-weight: normal;
	color: #fff;
}
.upgrade main .wrap .left table th,
.upgrade main .wrap .left table td {
	padding: 0 8px;
}
.upgrade main .wrap .left table td.price {
	text-align: right;
	border-bottom: 1px solid #555;
}
.upgrade main .wrap .left .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 32px;
}
.upgrade main .wrap .left .catalog-download {
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 24px;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 0;
	border-radius: 4px;
}
.upgrade main .wrap .left .link a {
	color: #2b5486;
}
.upgrade main .wrap .left .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.upgrade main .wrap .right {
	width: 602px;
	float: right;
}
.upgrade main form {
	margin-top: 16px;
}
.upgrade main form .fc {
	margin-top: 16px;
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.upgrade main form .fc h3 {
	font-weight: bold;
	margin-bottom: 24px;
}
.upgrade main form .fc dl dt {
	margin-bottom: 6px;
}
.upgrade main form .fc dl dd {
	margin-bottom: 24px;
}
.upgrade main form .fc dl dd label {
	margin-right: 16px;
}
.upgrade main form .fc dl dd label input {
	margin-right: 8px;
}
.upgrade main form .fc dl dd aside {
	color: #2b5486;
}
.upgrade main form .fc dl dd aside a {
	color: #2b5486;
	text-decoration: underline;
}
.upgrade main form .fc dl dd #auto-format {
	color: #2b5486;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-top: 8px;
	cursor: pointer;
}
.upgrade main form .required {
	color: #2b5486;
	margin-left: 16px;
}
.upgrade main form [type="text"] {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
}
.upgrade main form [name="upgrade_product"] {
	width: 60%;
}
.upgrade main form [name="quantity"] {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
	width: 140px;
	padding: 8px;
	margin-bottom: 8px;
}
.upgrade main form [name="zipcode"] {
	width: 200px;
	margin-bottom: 8px;
}
.upgrade main form [name="address"],
.upgrade main form [name="mail"],
.upgrade main form [name="mail_conf"] {
	width: 100%;
	margin: 0;
}
.upgrade main form textarea {
	width: 100%;
}
.upgrade main form .btn {
	text-align: center;
	margin-top: 40px;
}
.upgrade main form .btn #confirm {
	background-color: #2b5486;
	color: #fff;
	padding: 8px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	cursor: pointer;
	font-size: 16px;
}
.upgrade main form .btn aside {
	color: #2b5486;
	margin-top: 32px;
}
/*academic*/
.academic main .top-view {
	height: 300px;
	background-image: url(/img/bg-academic.jpg);
	background-position: center;
	background-size: cover;
}
.academic main .tabs {
	margin-top: -16px;
	margin-bottom: 48px;
	width: 800px;
}
.academic main .tabs ul {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
}
.academic main .tabs ul li a.current {
	margin-top: -16px;
}
.academic main .tabs ul li a {
	display: block;
	background-color: #fff;
	width: 200px;
	color: #2b5486;
	text-align: center;
	padding: 14px 0;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.academic main .items {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
}
.academic main .items > div {
	width: 31%;
	border: 1px solid #ccc;
	padding: 32px 10px;
}
.academic main .items > div img {
	display: block;
	margin: auto;
}
.academic main .items > div h2 {
	text-align: center;
	margin: 32px 0 8px;
	font-size: 22px;
}
.academic main .items > div .price {
	text-align: center;
	margin-bottom: 32px;
}
.academic main .items > div aside {
	width: 200px;
	margin: 0 auto 32px;
}
.academic main .items > div .spec {
	line-height: 1.2em;
	text-align: center;
}
.academic main .items > div .btn {
	display: block;
	margin: 32px auto 0;
	background-color: #2b5486;
	color: #fff;
	padding: 14px 0;
	width: 200px;
	text-align: center;
	border-radius: 4px;
}
.academic main .table {
		margin-top: 40px;
}
.academic main table {

	width: 100%;
	margin-bottom: 24px;
}
.academic main table th,
.academic main table td {
	text-align: center;
	padding: 12px 0;
	font-weight: bold;
	font-size: 100%;
}
.academic main table td span {
	font-size: 70%;
	color: #aaa;
}
.academic main table td img {
	display: block;
	width: 80%;
	margin: auto;
}
.academic main table td a {
	background-color: #2b5486;
	font-size: 80%;
	display: inline-block;
	padding: 4px 48px;
	color: #fff;
}
.academic main table td a:hover {
	opacity: .8;
}
.academic main .ex ul {
	display: flex;
}
.academic main .ex ul li {
	width: 50%;
}
.academic main .ex ul li img {
	display: block;
	width: 100%;
}
.academic main .interview {
	margin-top: 64px;
	margin-bottom: 40px;
	border: 3px solid #2b5486;
	border-radius: 3px;
	padding: 24px;
}
.academic main .interview h2 {
	text-align: center;
	color: #2b5486;
	font-size: 28px;
	font-weight: bold;
	margin-top: 16px;
	margin-bottom: 16px;
}
.academic main .interview > div {
	margin-top: 32px;
}
.academic main .interview h3 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 24px;
}
.academic main .interview h3 span {
	font-size: 20px;
	display: block;
	font-weight: bold;
}
.academic main .interview .f,
.academic main .interview .frev {
	display: flex;
	justify-content: space-between;
}
.academic main .interview .frev {
	flex-direction: row-reverse;
}
.academic main .interview .f > div,
.academic main .interview .frev > div {
	width: 58%;
}
.academic main .interview .f > figure,
.academic main .interview .frev > figure {
	width: 40%;
}
.academic main .interview .f > figure img,
.academic main .interview .frev > figure img {
	width: 100%;
	display: block;
}
.academic main .interview .f > figure span,
.academic main .interview .frev > figure span {
	font-size: 13px;
	color: #2b5486;
	display: block;
}
.academic main .interview .q {
	font-weight: bold;
	display: flex;
	margin-bottom: 1em;
}
.academic main .interview .a {
	display: flex;
}
.academic main .interview .q:before {
	content: 'Q.';
}
.academic main .interview .a:before {
	content: 'A.';
}
.academic main .interview > .youtube {
	display: block;
	margin-top: 40px;
	width: 100%;
	height: 500px;
}
/*student*/
.student main .top-view {
	height: 300px;
	background-image: url(/img/bg-trial.jpg);
	background-position: center;
	background-size: cover;
}
.student main .tabs {
	margin-top: -16px;
	margin-bottom: 48px;
}
.student main .tabs ul {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
	width: 800px;
	margin: auto;
}
.student main .tabs ul li a.current {
	margin-top: -16px;
}
.student main .tabs ul li a {
	display: block;
	background-color: #fff;
	width: 200px;
	color: #2b5486;
	text-align: center;
	padding: 14px 0;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.student main .wrap:after {
	content: '';
	display: block;
	clear: both;
}
.student main .wrap .left {
	width: 336px;
	float: left;
	border-radius: 4px;
	padding: 20px 20px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-bottom: 32px;
}
.student main .wrap .left img {
	display: block;
	margin: auto;
}
.student main .wrap .left h2 {
	text-align: center;
	margin: 32px 0 16px;
}
.student main .wrap .left .price {
	text-align: center;
	margin-bottom: 32px;
}
.student main .wrap .left aside {
	margin-bottom: 32px;
	padding: 0 40px;
}
.student main .wrap .left .spec {
	line-height: 1.2em;
	padding: 0 40px;
}
.student main .wrap .left .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 32px;
}
.student main .wrap .left .catalog-download {
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 24px;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 0;
	border-radius: 4px;
}
.student main .wrap .left .link a {
	color: #2b5486;
}
.student main .wrap .left .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.student main .wrap .right {
	width: 602px;
	float: right;
}
.student main form {
	margin-top: 16px;
}
.student main form .fc {
	margin-top: 16px;
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.student main form .fc h3 {
	font-weight: bold;
	margin-bottom: 24px;
}
.student main form .fc dl dt {
	margin-bottom: 6px;
}
.student main form .fc dl dd {
	margin-bottom: 24px;
}
.student main form .fc dl dd > p {
	margin-top: 6px;
}
.student main form .fc dl dd label {
	margin-right: 16px;
}
.student main form .fc dl dd label input {
	margin-right: 8px;
}
.student main form .fc dl dd aside {
	color: #2b5486;
}
.student main form .fc dl dd #auto-format {
	color: #2b5486;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-top: 8px;
	cursor: pointer;
}
.student main form .required {
	color: #2b5486;
	margin-left: 16px;
}
.student main form [type="text"] {
	border: none;
	border-radius: 0;
	margin: 0;
	border-bottom: 1px solid #2b5486;
}
.student main form [name="quantity"] {
	width: 80px;
	margin-bottom: 8px;
}
.student main form [name="zipcode"] {
	width: 200px;
}
.student main form [name="address1"],
.student main form [name="address2"],
.student main form [name="emailaddress"],
.student main form [name="emailaddress_conf"] {
	width: 100%;
	margin: 0;
}
.student main form textarea {
	width: 100%;
}
.student main form .soft {
	-js-display: flex;
	display: flex;
	flex-wrap: wrap;
}
.student main form .soft label {
	width: 30%;
	font-size: 13px;
	margin: 8px 0;
}
.student main form .soft label [type="text"] {
	border-radius: 4px;
	border: 1px solid #ccc;
	width: 100%;
}
.student main form .btn {
	text-align: center;
	margin-top: 40px;
}
.student main form .btn #confirm {
	background-color: #2b5486;
	color: #fff;
	padding: 8px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	cursor: pointer;
	font-size: 16px;
}
.student main form .btn aside {
	color: #2b5486;
}
.student main form .btn > aside {
	margin-top: 32px;
}
.student main form .btn .term {
	margin-bottom: 32px;
	padding: 16px;
	background-color: #f5f5f5;
}
.student main form .btn .term h4 {
	font-weight: bold;
	margin-bottom: 8px;
}
.student main form .btn .term p {
	font-size: 14px;
	text-align: left;
	border: 1px solid #fff;
	padding: 8px;
	margin-bottom: 8px;
}
/*educational*/
.educational main .top-view {
	height: 300px;
	background-image: url(/img/bg-trial.jpg);
	background-position: center;
	background-size: cover;
}
.educational main .tabs {
	margin-top: -16px;
	margin-bottom: 48px;
}
.educational main .tabs ul {
	-js-display: flex;
	display: flex;
	justify-content: space-around;
	width: 800px;
	margin: auto;
}
.educational main .tabs ul li a.current {
	margin-top: -16px;
}
.educational main .tabs ul li a {
	display: block;
	background-color: #fff;
	width: 200px;
	color: #2b5486;
	text-align: center;
	padding: 14px 0;
	border-radius: 4px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.educational main .wrap:after {
	content: '';
	display: block;
	clear: both;
}
.educational main .wrap .left {
	width: 336px;
	float: left;
}
.educational main .wrap .left > div {
	border-radius: 4px;
	padding: 20px 20px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-bottom: 32px;
}
.educational main .wrap .left img {
	display: block;
	margin: auto;
}
.educational main .wrap .left h2 {
	text-align: center;
	margin: 32px 0 16px;
}
.educational main .wrap .left .price {
	text-align: center;
	margin-bottom: 32px;
}
.educational main .wrap .left aside {
	margin-bottom: 32px;
	padding: 0 40px;
}
.educational main .wrap .left .spec {
	line-height: 1.2em;
	padding: 0 40px;
}
.educational main .wrap .left .catalog-download {
	color: #fff;
	display: block;
	text-align: center;
	margin-top: 24px;
	box-shadow: 1px 1px 2px 0 #aaa;
	background-color: #2b5486;
	padding: 8px 0;
	border-radius: 4px;
}
.educational main .wrap .left .link {
	line-height: 1.2em;
	text-align: center;
	margin-top: 32px;
}
.educational main .wrap .left .link a {
	color: #2b5486;
}
.educational main .wrap .left .link a:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f105';
	margin-left: 6px;
}
.educational main .wrap .right {
	width: 602px;
	float: right;
}
.educational main form {
	margin-top: 16px;
}
.educational main form .fc {
	margin-top: 16px;
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
}
.educational main form .fc h3 {
	font-weight: bold;
	margin-bottom: 24px;
}
.educational main form .fc dl dt {
	margin-bottom: 6px;
}
.educational main form .fc dl dd {
	margin-bottom: 24px;
}
.educational main form .fc dl dd label {
	margin-right: 16px;
}
.educational main form .fc dl dd label input {
	margin-right: 8px;
}
.educational main form .fc dl dd aside {
	color: #2b5486;
}
.educational main form .fc dl dd aside a {
	color: #2b5486;
	text-decoration: underline;
}
.educational main form .fc dl dd #auto-format {
	color: #2b5486;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 3px 0 #aaa;
	margin-top: 8px;
	cursor: pointer;
}
.educational main form .required {
	color: #2b5486;
	margin-left: 16px;
}
.educational main form [type="text"] {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
}
.educational main form [name="quantity"] {
	width: 200px;
	padding: 8px;
	margin-bottom: 8px;
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #2b5486;
}
.educational main form [name="zipcode"] {
	width: 200px;
	margin-bottom: 8px;
}
.educational main form [name="address"],
.educational main form [name="mail"],
.educational main form [name="mail_conf"] {
	width: 100%;
	margin: 0;
}
.educational main form textarea {
	width: 100%;
}
.educational main form .btn {
	text-align: center;
	margin-top: 40px;
}
.educational main form .btn #confirm {
	background-color: #2b5486;
	color: #fff;
	padding: 8px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	cursor: pointer;
	font-size: 16px;
}
.educational main form .btn aside {
	color: #2b5486;
	margin-top: 32px;
}
/*vr*/
.vr main .top-view {
	height: 300px;
	background-image: url(/img/bg-vr.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.vr .head {
	margin-top: 56px;
	padding-bottom: 40px;
}
.vr .head h2 {
	margin-bottom: 32px;
	margin-left: 24px;
}
.vr .head .flex {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.vr .head .flex > div {
	width: 46%;
}
.vr .head .flex > div img {
	width: 100%;
}
.vr .head .flex > div p {
	margin-bottom: 24px;
}
.vr .panorama {
	background-color: #f5f5f5;
	padding: 56px 0;
}
.vr .panorama h2 {
	margin-bottom: 32px;
	margin-left: 24px;
}
.vr .panorama .flow-img {
	width: 900px;
	margin: auto;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.vr .panorama .flow-img img {
	display: block;
}
.vr .panorama .flow-img span:before {
	display: block;
	content: 'Ã¢â€ â€™';
	font-size: 28px;
	margin: 0 32px;
}
.vr .panorama .flow {
	margin-top: 40px;
}
.vr .panorama .flow ul {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.vr .panorama .flow ul li {
	width: 31%;
}
.vr .panorama .flow ul li h3 {
	font-weight: bold;
	margin-bottom: 16px;
}
.vr .panorama .flow ul li p {
	font-size: 13px;
}
.vr .panorama .flow .link a {
	display: block;
	width: 200px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	background-color: #2b5486;
	margin: 40px auto;
	padding: 16px 0;
	box-shadow: 1px 1px 2px 0 #333;
}
.vr .use {
	margin-top: 56px;
}
.vr .use h2 {
	margin-bottom: 32px;
	margin-left: 24px;
}
.vr .use ul {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.vr .use ul.flow {
	margin-bottom: 40px;
}
.vr .use ul.flow li p {
	font-size: 13px;
}
.vr .use ul li {
	width: 31%;
}
.vr .use ul li img {
	width: 100%;
}
.vr .use ul li h3 {
	font-weight: bold;
	margin-bottom: 16px;
}
.vr .use ul.sample li p {
	font-size: 13px;
}
.vr .rendering {
	margin-top: 56px;
}
.vr .rendering h2 {
	margin-bottom: 32px;
	margin-left: 24px;
}
.vr .rendering iframe {
	display: block;
	width: 800px;
	margin: auto;
	height: 400px;
	margin-bottom: 40px;
}
.vr .rendering .flex {
	width: 800px;
	margin: auto;
	-js-display :flex;
	display: flex;
	justify-content: space-between;
}
.vr .rendering .flex > div {
	width: 46%;
}
.vr .rendering .flex > div img {
	width: 100%;
}
.vr .rendering .flex > div h3 {
	font-weight: bold;
	margin-bottom: 16px;
}
.vr .mylumion {
	margin-top: 56px;
}
.vr .mylumion h2 {
	margin-bottom: 32px;
	margin-left: 24px;
}
.vr .mylumion .flex {
	width: 800px;
	margin: auto;
	-js-display :flex;
	display: flex;
	justify-content: space-between;
}
.vr .mylumion .flex > div {
	width: 46%;
}
.vr .mylumion .flex > div img {
	width: 100%;
}
.vr .mylumion .flex > div h3 {
	font-weight: bold;
	margin-bottom: 16px;
}
.vr .mylumion .flex > div > a {
	display: block;
	background-color: #2b5486;
	text-align: center;
	color: #fff;
	padding: 8px 0;
	width: 200px;
	margin: auto;
	margin-top: 16px;
	border-radius: 4px;
}
.vr .mylumion .flow {
	-js-display :flex;
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}
.vr .mylumion .flow li {
	width: 31%;
}
.vr .mylumion .flow li img {
	width: 100%;
	display: block;
	margin-bottom: 40px;
}
.vr .mylumion .flow li h3 {
	font-weight: bold;
	margin-bottom: 16px;
}

/*mylumion*/
.mylumion main .top-view {
	height: 300px;
	background-image: url(/img/bg-vr.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.mylumion .head {
	margin-top: 56px;
	padding-bottom: 40px;
}
.mylumion .head h2 {
	text-align: center;
	margin-bottom: 32px;
	font-weight: lighter;
	font-size: 36px;
}
.mylumion .head p{
	text-align: center;
	line-height: 1.7;
	font-size:14px;
	margin-bottom: 32px;
}
.mylumion .head .flex {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
}
.mylumion .head section{
	margin-bottom:64px;
}
.mylumion .head .title h2{
	color: #666;
}
.mylumion .head .title p{
	color: #666;
}
.mylumion .head .title ul{
		-js-display :flex;
		display: flex;
		justify-content: space-between;
}
.mylumion .head .title ul li{
		vertical-align: middle;
}
.mylumion .head .title p{
	text-align: center;
	line-height: 1.7;
	font-size:13px;
}
.mylumion .head .title img{
	margin-top:12%;
	width: 450px;
	height: auto;
}
.mylumion .head .title iframe{
		width: 450px;
		height: 360px;
}
.mylumion .head .imgs .img360 ul{
	display: flex;
	-js-display: flex;
	justify-content: space-between;
}
.mylumion .head .imgs .img360 ul li{
	width:31%;
}
.mylumion .head .imgs .img360 ul li img{
	width: 100%;
}
.mylumion .head .device{
		text-align: center;
}

.mylumion .head .faq {
	width: 600px;
	margin:0 auto;
}
.mylumion .head .faq .txt-detail p{
	text-align: left;
}
.mylumion .heada{
	color: #2b5486;
	border-bottom:solid 1px #2b5486;
}


/*news*/
.news main h2 {
	margin-top: 40px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 40px;
}
.news main .top-view {
	height: 300px;
	background-image: url(/img/bg-news.jpg);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.news main .top-view p {
	font-weight: bold;
	color: #fff;
	font-size: 24px;
}
.news main .banners {
	margin-top: 40px;
	margin-bottom: 40px;
}
.news main .banners ul {
	-js-display: flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.news main .banners ul li {
	width: 32%;
	margin-bottom: 8px;
}
.news main .banners ul li a img {
	width: 100%;
	display: block;
}
.news main .banners ul li a:hover img {
	opacity: .9;
}
.news main .posts li {
	-js-display: flex;
	display: flex;
	justify-content: space-between;
	padding: 24px;
	border: 1px solid #ccc;
	margin-bottom: 24px;
}
.news main .posts li .category {
	width: 100px;
}
.news main .posts li.exth .content {
	width: calc(100% - 380px);
}
.news main .posts li.exth .thumbneil {
	width: 240px;
}
.news main .posts li.exth .thumbneil img {
	width: 100%;
}
.news main .posts li.sngl .content {
	width: calc(100% - 140px);
}
.news main .posts li.sngl .content .link a {
	color: #2b5486;
	text-decoration: underline;
}
.news main .posts li.exth .content .link {
	margin-top: 16px;
}
.news main .posts li.exth .content .link a {
	color: #2b5486;
	text-decoration: underline;
}
.news main .posts li .content h3 {
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 8px;
}
.news main .posts li .content h3 .date {
	color: #777;
	margin-right: 16px;
	font-size: 16px;
}
.news main .posts li .category span {
	display: block;
	text-align: center;
	color: #fff;
	border-radius: 4px;
	padding: 4px 0;
	font-size: 14px;
}
/*Lumion Youth 2019*/
body.youth2019,
body.youth2019 header,
body.youth2019 main {
	background-color: #00101B;
}
body.youth2019 * {
	color: #fff;
}
body.youth2019 .remodal *,
body.youth2019 input,
body.youth2019 select,
body.youth2019 option {
	color: #000;
}
body.youth2019 form .error {
	color: red;
	background-color: none;
}
.youth2019.top main {
	margin:0px;
	padding:0px;
	padding-top: 0px;
}
.youth2019.top .inner {
	max-width: 1000px;
	margin: 0 auto;
	line-height: 1.7;
	letter-spacing: 1;
}
.youth2019.top .top .inner p {
	margin-top: 32px;
	text-align: center;
	font-size: 20px;
}
.youth2019.top .top {
	margin-bottom: 100px;
}
.youth2019.top .top img {
	width: 1000px;
	display: block;
}
.youth2019.top .theme {
	margin-bottom:100px;
}
.youth2019.top .theme .h {
	float: left;
	width: 200px;
	font-size: 16px;
}
.youth2019.top .theme .text {
	float: left;
	width: 800px;
}
.youth2019.top .judge {
	margin-bottom: 60px;
}
.youth2019.top .message {
	width: 1000px;
	margin: auto;
	margin-bottom: 60px;
}
.youth2019.top .message p {
	margin-bottom: 1em;
}
.youth2019.top .message p.right {
	text-align: right;
}
.youth2019.top .judge .text {
	float: left;
	width: 200px;
}
.youth2019.top .judge .text img {
	display: block;
	width: 90%;
	margin-bottom: 10px;
}
.youth2019.top .judge .text span {
	font-weight: bold;
}
.youth2019.top .top .m_top {
	display: none;
}
.youth2019.top .detail {
	margin-bottom:100px;
	color:#404040;
}
.youth2019.top .detail .content {
	margin-bottom:20px;
	color:#404040;
}
.youth2019.top .detail .h {
	letter-spacing: 1;
	float: left;
	width: 200px;
}
.youth2019.top .detail .text {
	float: left;
	width: 800px;
}
.youth2019.top .entry {
	text-align: center;
	margin-bottom: 100px;
}
.youth2019.top .entry p {
	background-color: #00ffd8;
	color: #000;
	font-size: 16px;
	padding: 15px 50px 15px 50px;
	display: inline;
}
.youth2019 header {
	position: static;
	box-shadow: none;
	padding: 16px 0;
}
.youth2019 header img {
	display: block;
	width: 56px;
	margin: auto;
}
.youth2019.entry main {
	padding-top: 0;
}
.youth2019.entry main #team-items {
	display: none;
}
.youth2019.entry main h2 {
	width: 1000px;
	margin: auto;
	margin-top: 40px;
	text-align: center;
	font-weight: bold;
}
.youth2019.entry main .required {
	color: #00FFD7;
	text-align: center;
	width: 1000px;
	margin: auto;
	margin-bottom: 20px;
}
.youth2019.entry main form {
	width: 1000px;
	margin: auto;
}
.youth2019.entry main form .form-cmp {
	display: flex;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ccc;
}
.youth2019.entry main form .form-cmp h4,
.youth2019.entry main form .form-cmp > div {
	width: 500px;
}
.youth2019.entry main form .form-cmp.name input,
.youth2019.entry main form .form-cmp.member input {
	width: 48%;
	margin-bottom: 5px;
}
.youth2019.entry main form .form-cmp.member div input:nth-last-child(1),
.youth2019.entry main form .form-cmp.member div input:nth-last-child(3) {
	width: 98%;
}
.youth2019.entry main form .form-cmp.school input,
.youth2019.entry main form .form-cmp.tel input,
.youth2019.entry main form .form-cmp.mail input,
.youth2019.entry main form .form-cmp.soft input,
.youth2019.entry main form .form-cmp.mail-conf input,
.youth2019.entry main form .form-cmp textarea {
	width: 98%;
}
.youth2019.entry main form .form-cmp.soft select {
	margin-bottom: 5px;
}
.youth2019.entry main form .form-cmp label {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 5px;
}
.youth2019.entry main form .form-cmp label input {
	margin-right: 5px;
}
.youth2019.entry main form aside {
	width: 640px;
	margin: auto;
}
.youth2019.entry main form aside p {
	margin-bottom: 20px;
}
.youth2019.entry main form .btn {
	text-align: center;
	margin-top: 40px;
}
.youth2019.entry main form .btn a,
.youth2019.entry main form .btn input {
	display: inline-block;
	background: none;
	font-size: 20px;
	padding: 10px 40px;
	margin: 0 10px;
	border-radius: 0;
	cursor: pointer;
}
.youth2019.entry main form .btn a {
	background-color: #ccc;
	color: #fff;
}
.youth2019.entry main form .btn input {
	background-color: #00ffd8;
	color: #000;
}
.youth2019.entry main form .btn a:hover,
.youth2019.entry main form .btn input:hover {
	opacity: .9;
}
.youth2019.entry main form [name="ind_apply_other"],
.youth2019.entry main form [name="team_apply_other"],
.youth2019.entry main form [name="ind_soft_other"],
.youth2019.entry main form [name="team_soft_other"] {
	display: none;
}
.youth2019.entry .remodal table td,
.youth2019.entry .remodal table th {
	text-align: left;
}
.youth2019.entry.thanks main > p {
	width: 1000px;
	margin: 40px auto;
	text-align: center;
}
/*Lumion Competition 2020*/
.compe2020-page main{
	margin:0px!important;
	padding:0px!important;
}
.compe2020-page main .inner{
	max-width: 1100px;
	margin: 0 auto;
}
.compe2020-page main .top{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	width: 100%;
	height: 100vh;
	background-image: url(/head_bg2.png);
	background-size: cover;
	background-attachment: fixed;
	min-height: 600px;
}
.compe2020-page main .top .main-img h1{
	max-width: 1000px;
}
.compe2020-page main .top .main-img img{
	text-align: center;
	width: 100%;
	min-width: 700px;
}
.compe2020-page main .top .main-img-text{
	text-align: center;
	margin-top: 50px;
}
.compe2020-page main .top .main-img-text p{
	line-height: 2;
	letter-spacing: 1px;
	color: white;
}
.compe2020-page main .message{
	padding:48px 0;
}
.compe2020-page main .message .inner{
	display: flex;
}
.compe2020-page main .message .inner .left-img img{
	margin-top: 36px;
	width: 300px;
}
.compe2020-page main .message .inner .right-text{
	margin-left: 50px;
	padding:30px;
}
.compe2020-page main .message .inner .right-text p{
	color:#858585;
}
.compe2020-page main .message .inner .right-text p:first-child{
	font-size: 20px;
	border-bottom: solid 1px #858585;
	text-align: center;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.compe2020-page main .message .inner .right-text p:last-child{
	text-align: justify;
	text-justify: inter-ideograph;
	line-height: 1.8;
	font-size: 14px;
}
.compe2020-page main .judge{
	background:#D9D9D9;
	padding:48px 0px;
}
.compe2020-page main .judge .judge-img{
	width: 250px;
	margin: 16px auto;
}
.compe2020-page main .judge .judge-img img{
	width: 100%;
}
.compe2020-page main .judge .judge-text p:first-child{
	font-size: 16px;
	text-align: center;
	margin-bottom: 16px;
}
.compe2020-page main .judge .judge-text p:last-child{
	font-size: 12px;
	width: 500px;
	margin: 0 auto;
}
.compe2020-page main .judge .message .button{
	background-color: #CD0049;
	color: #fff;
	text-align: center;
	width: 300px;
	display: block;
	margin: auto;
	font-size: 14px;
	padding: 8px 0;
	border-radius: 3px;
	cursor: pointer;
}
.compe2020-page main .place{
	min-height: 600px;
	display: flex;
}
.compe2020-page main .place .map{
	min-height: 600px;
	width: 50%;
}
.compe2020-page main .place .place-detail{
 width: 40%;
 padding:30px;
}
.compe2020-page main .place .place-detail .place-photo{
	display: flex;
	justify-content:space-between	;
	margin-bottom: 48px;
}
.compe2020-page main .place .place-detail .place-photo img{
	width: 49%;
}
.compe2020-page main .place .place-detail .place-text{
	margin-bottom: 48px;
}
.compe2020-page main .place .place-detail .place-text p:first-child{
	font-size: 20px;
	border-bottom: solid 1px #858585;
	text-align: center;
	padding-bottom: 30px;
	margin-bottom: 30px;
	color: #858585;
}
.compe2020-page main .place .place-detail .place-text p:last-child{
	text-align: justify;
	letter-spacing: 1px;
	line-height: 1.8;
	font-size: 14px;
	color: #858585;
}
.compe2020-page main .place .place-detail .place-text p a{
	color: #CD0049;
}
.compe2020-page main .matterport-view {
	height: 600px;
}
.compe2020-page main .schedule{
	background:#D9D9D9;
	padding:48px 0px;
}
.compe2020-page main .schedule .schedule-text{
	width: 40%;
	margin:0 auto;
}
.compe2020-page main .schedule .schedule-text p{
	font-size: 20px;
	letter-spacing: 1px;
	border-bottom: solid 1px #858585;
	text-align: center;
	padding-bottom: 30px;
	margin-bottom: 30px;
	color: #858585;
}
.compe2020-page main .schedule .schedule-text table{
	margin: 0 auto;
}
.compe2020-page main .schedule .schedule-text table tr{
	width: 100%;
}
.compe2020-page main .schedule .schedule-text table tr td{
	padding-right:20px;
	color: #858585;
	text-align: justify;
	font-size: 14px;
	margin-bottom: 5px;
}
.compe2020-page main .organizer{
	padding:48px 0px;
}
.compe2020-page main .organizer .org-content{
	margin: 0 auto;
	width: 250px;
}
.compe2020-page main .organizer .org-content p:first-child{
	font-size: 20px;
	text-align: center;
	padding-bottom: 30px;
	color: #858585;
}
.compe2020-page main .organizer .org-content p:last-child{
	text-align: center;
	font-size: 14px;
	color: #858585;
}
.compe2020-page main .organizer .org-content h1{
	width: 250px;
}
.compe2020-page main .organizer .org-content h1 img{
	width: 250px;
}
.compe2020-page main .support{
	padding:48px 0px;
}
.compe2020-page main .support .sup-content{
	margin: 0 auto;
	width: 320px;
	text-align: center;
}
.compe2020-page main .support .sup-content p:first-child{
	font-size: 20px;
	text-align: center;
	padding-bottom: 30px;
	color: #858585;
}
.compe2020-page main .support .sup-content .caption{
	text-align: center;
	font-size: 14px;
	color: #858585;
}
.compe2020-page main .support .sup-content .caption-sub{
	text-align: center;
	font-size: 12px;
	color: #858585;
}
.compe2020-page main .support .sup-content img{
	width: 250px;
}
.compe2020-page main .support .sup-photo{
	margin-top: 48px;
}
.compe2020-page main .support .sup-photo img{
	width: 320px;
}
.compe2020-page main .sponsor{
	background:#D9D9D9;
	padding:48px 0px;
}
.compe2020-page main .sponsor .spo-content{
	width: 40%;
	margin:0 auto;
}
.compe2020-page main .sponsor .spo-content p:first-child{
	font-size: 20px;
	border-bottom: solid 1px #858585;
	text-align: center;
	padding-bottom: 30px;
	margin-bottom: 30px;
	color: #858585;
}
.compe2020-page main .sponsor .spo-content p:last-child{
	text-align:center;
	letter-spacing: 1px;
}
.compe2020-page header {
	background-color: #000;
	box-shadow: none;
	position: static;
}
.compe2020-page header h1 {
	padding: 16px;
}
.compe2020-page header h1 img {
	width: 48px;
	display: block;
}
/*Lumion Competition 2020 judge*/
.compe2020-page main{
	margin:0px!important;
	padding:0px!important;
}
.compe2020-page main .inner{
	max-width: 1100px;
	margin: 0 auto;
}
.compe2020-page.jugde main .top {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	width: 100%;
	height: 100vh;
	background-image: url(/img/competition/2020/head_bg2.png);
	background-size: none;
	background-attachment: none;
	min-height: 400px;
}
.compe2020-page main .top .main-img h1{
	max-width: 1000px;
}
.compe2020-page main .top .main-img img{
	text-align: center;
	width: 100%;
	min-width: 700px;
}
.compe2020-page#judge main .judge .video{
	text-align: center;
	margin: 48px;
}
.compe2020-page#judge main .judge .inner{
	margin-bottom: 160px;
}
.support-contact main h2 {
	text-align: center;
	font-size: 150%;
	margin: 56px 0;
}
.support-contact main .section {
	margin-top: 40px;
	margin-bottom: 80px;
}
.support-contact main .flex {
	display: flex;
	justify-content: space-around;
}
.support-contact main .flex > div {
	width: 46%;
	background-color: #f5f5f5;
	padding: 24px 16px;
}
.support-contact main .flex > div h3 {
	text-align: center;
	color: #2b5486;
	padding-bottom: 16px;
	margin-bottom: 16px;
	border-bottom: 5px solid #fafafa;
}
.support-contact main .flex > div h3 a {
	color: #2b5486;
}
.support-contact main .flex > div:nth-child(1) h3:before {
	font-family: 'Font Awesome 5 Pro';
	content: '\f095';
	background-color: #2b5486;
	background-color: #999;
	color: #fff;
	display: block;
	margin: auto;
	margin-bottom: 16px;
	border-radius: 50%;
	width: 80px;
	line-height: 80px;
	font-size: 40px;
}
.support-contact main .flex > div:nth-child(2) h3:before {
	font-family: 'Font Awesome 5 Pro';
	content: '\f0e0';
	background-color: #2b5486;
	background-color: #999;
	color: #fff;
	display: block;
	margin: auto;
	margin-bottom: 16px;
	border-radius: 50%;
	width: 80px;
	line-height: 80px;
	font-size: 40px;
}
.support-contact main .flex > div p {
	text-align: center;
}
.support-contact main .flex > div aside {
	background-color: #fff;
	border: 1px solid #2b5486;
	text-align: center;
	margin-top: 16px;
	padding: 8px;
	font-size: 80%;
}
.support-contact main .flex > div aside a {
	color: #2b5486;
	text-decoration: underline;
}
.support-contact main .section:nth-child(4) {
	background-color: #f5f5f5;
	padding: 24px 16px;
}
.support-contact main .section:nth-child(4) p,
.support-contact main .section:nth-child(4) aside {
	text-align: center;
}
.support-contact main .section:nth-child(4) aside {
	margin-top: 8px;
}
.support-contact form > table {
	margin-top: 40px;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
.support-contact form > table tr {
	border-bottom: 1px solid #ccc;
}
.support-contact form > table th,
.support-contact form > table td {
	text-align: left;
	padding: 16px;
}
.support-contact form > table caption {
	background-color: #2b5486;
	color: #fff;
	padding: 6px 0;
	margin-bottom: 8px;
}
.support-contact form > table th {
	width: 320px;
	font-size: 14px;
	vertical-align: top;
}
.support-contact form > table th div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.support-contact form > table th div .required {
	color: #2b5486;
	font-size: 13px;
	padding: 4px 8px;
}
.support-contact form > table th div .optional {
	color: #ccc;
	font-size: 13px;
	padding: 4px 8px;
}
.support-contact form > table td aside {
	background-color: #f5f5f5;
	padding: 6px;
	font-size: 12px;
	margin-top: 4px;
}
.support-contact form > table td aside.file {
	border: 1px solid #2b5486;
	background-color: #fff;
	margin: 0 0 8px;
	padding: 16px;
}
.support-contact form > table td aside a {
	color: #2b5486;
	text-decoration: underline;
}
.support-contact form > table td [type="text"] {
	width: 100%;
	margin: 0;
	border: 1px solid #ccc;
}
.support-contact form > table td select {
	border: 1px solid #ccc;
	padding: 10px;
	border-radius: 5px;
}
.support-contact form > table td textarea {
	border: 1px solid #ccc;
	width: 100%;
	height: 160px;
}
.support-contact form .btns {
	text-align: center;
	margin: 40px 0;
}
.support-contact form .btns input {
	background-color: #2b5486;
	color: #fff;
	padding: 8px 32px;
	box-shadow: 1px 1px 3px 0 #aaa;
	cursor: pointer;
	font-size: 16px;
}
.support-contact form .btns input:hover {
	opacity: .8;
}
.product.compatibility main .list h2 {
		text-align: center;
		margin: 40px 0;
}
.product.compatibility main .list ul {
	margin-top: 50px;
}
.product.compatibility main .list ul li {
	width: 25%;
	float: left;
	margin-bottom: 40px;
}
.product.compatibility main .list ul li h3 {
	text-align: center;
	margin-bottom: 10px;
}
.product.compatibility main .list ul li h3,
.product.compatibility main .list ul li h3 a {
	font-size: 20px;
}
.product.compatibility main .list ul li h3 a {
	text-decoration: underline;
	color: #36a;
}
.product.compatibility main .list ul li img {
	width: 90%;
	display: block;
	margin: auto;
	border: 1px solid #aaa;
}
.competition main .top-view {
	height: 300px;
	background-image: url(/img/bg-competition.png);
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.competition main .top-view p img {
	display: block;
}
.competition main .description-wrap {
	background-image: url(/img/competition/top_back.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.competition main .description {
	padding: 100px 0;
	background-color: rgba(0,0,0,0.4);
}
.competition main .description h2 img {
	width: 400px;
}
.competition main .description p {
	text-align: center;
	line-height: 1.5em;
	margin-bottom: 20px;
	color: #fff;
}
.competition main .description iframe {
	display: block;
	width: 800px;
	margin: 40px auto 0;
	height: 377px;
	border: 3px solid #aaa;
}
.competition main .archives {
	padding: 50px 0;
}
.competition main .archives ul li {
	margin-bottom: 50px;
}
.competition main .archives ul li h3 {
	font-size: 24px;
}
.competition main .archives ul li .clearfix {
	margin-top: 10px;
}
.competition main .archives ul li .clearfix .movie {
	width: 50%;
	float: left;
}
.competition main .archives ul li .clearfix .movie iframe {
	width: 500px;
	height: 300px;
}
.competition main .archives ul li .clearfix .movie img {
	width: 500px;
	height: 300px;
}
.competition main .archives ul li .clearfix .theme {
	width: 48%;
	float: right;
}
.competition main .archives ul li .clearfix .theme h4 {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
}
.competition main .archives ul li .clearfix .theme a {
	display: inline-block;
	margin-top: 20px;
	padding: 10px 30px;
	background-color: #2b5486;
	color: #fff;
	box-shadow: 1px 1px 5px 0 #aaa;
	transition: .3s;
}
.competition main .archives ul li .clearfix .theme a:hover {
	opacity: 0.9;
}
#sp-gmenu-trigger,
#sp-gmenu {
	display: none;
}
#sp-gmenu {
	margin-top: -100vh;
}
#home-start {
	position: absolute;
	bottom: 20px;
	width: 100%;
	text-align: center;
	z-index: 999;
	animation: fullwidth-header-bounce 2.2s ease-out infinite;
}
#home-start:after {
	font-family: 'Font Awesome 5 Pro';
	content: '\f107';
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
#home-start:hover:after {
	opacity: .8;
}
.inner {
	position: relative;
}
.trialProducts {
	font-size: 14px;
	padding-top: 40px;
}
.trialProducts .row {
	display: flex;
	justify-content: space-between;
}
.trialProducts .row .tw {
	width: 66%;
	display: flex;
	justify-content: space-between;
}
.trialProducts .row .tw .col-sm-4 {
	width: 48%;
}
.trialProducts .row > .col-sm-4 {
	width: 32%;
}
.trialProducts .row .col-sm-4 {
	padding: 20px 50px 50px;
	text-align: center;
	position: relative;
}
.trialProducts .row .col-sm-8 {
	width: 64%;
	margin-left:auto;
}
.trialProducts .gray {
	border-radius: 3px;
	background-color: #F5F5F5;
}
.trialProducts .sub {
	color: #417287;
	margin-bottom: 15px;
	line-height: 1;
}
.trialProducts .pkg {
	margin-bottom: 35px;
}
.trialProducts h2.name {
	font-weight: 200;
	font-size: 24px;
	margin-bottom: 12px;
	margin-top: 0px;
	line-height: 1;
	white-space: nowrap;
}
.trialProducts .price {
	margin-bottom: 30px;
	line-height: 1;
}
.trialProducts .table {
	width: 100%;
	text-align: left;
	font-size: 14px;
	margin-bottom: 120px;
}
.trialProducts .table td {
	border-bottom: 1px solid #707070;
	padding-top: 20px;
	padding-bottom: 20px;
}
.trialProducts .table td div {
	display: flex;
}
.trialProducts .table td div span:first-child {
	min-width: 50px;
	margin-right: 2em;
}
.trialProducts b {
	color: #417287;
}
.trialProducts .table td ul {
	float: right;
	margin-left: -30px;
}
.trialProducts .table td ul li {
	margin: 0;
	padding: 0;
	font-size: 12px;
}
.trialProducts .btnBox a {
	color: rgba(255,255,255,1.00);
	display: block;
	padding-top: 19px;
	padding-bottom: 19px;
	background: #2b5486 0% 0% no-repeat padding-box;
	border-radius: 3px;
	opacity: 1;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	width: 196px;
	margin-left: -98px;
	margin-right: auto;
	line-height: 1;
	position: absolute;
	bottom: 52px;
	left: 50%;
}
.trialProducts .link {
	text-align: center;
	padding-top: 64px;
	padding-bottom: 42px;
	text-align: center;
}
.trialProducts .link a {
	display: inline-block;
	padding-top: 19px;
	padding-bottom: 19px;
	color: #417287;
	border: 1px solid #417287;
	border-radius: 3px;
	opacity: 1;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	width: 196px;
	margin-right: auto;
	line-height: 1;
}
.trial main .trialProducts form,
.trial main .trialProducts form .fc{
	margin-top: 0;
}
.trialProducts.formPage {
	padding-top: 0px;
}
.trialProducts.formPage .leading {
	margin-bottom: 24px;
}
.trialProducts.formPage .leading p {
	font-size: 14px;
	margin-bottom: 16px;
}
.trialProducts.formPage .leading p a {
	text-decoration: underline;
	color: #2b5486;
}
.trialProducts.formPage .row {
	align-items: top;
}
.trialProducts.formPage .row .col-sm-4 {
	padding: 0;
}
.trialProducts.formPage .row .col-sm-4 .gray {
	padding: 20px 50px 20px;
}
.trialProducts.formPage .row .col-sm-4 .table {
	margin-bottom: 40px;
}
.trialProducts.formPage .row .col-sm-4 {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
}
	.trialProducts.formPage .row .col-sm-8 {
		-webkit-box-ordinal-group:2;
	-ms-flex-order:2;
	-webkit-order:2;
	order:2;
}
@media only screen and (max-width: 576px) {
	.trialProducts {
		padding-top: 0px;
	}
	.trialProducts .row {
		display: block;
	}
	.trialProducts .row .tw {
		width: 100%;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	.trialProducts .row .col-sm-4 {
		width: 100%!important;
		padding: 20px 50px 50px;
		text-align: center;
		position: relative;
	}
.trialProducts.formPage .row .col-sm-4 {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
		margin-bottom: 50px;
	}
	.trialProducts.formPage .row .col-sm-8 {
		width: 100%;
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
		margin-bottom: 138px;
	}
}
#sidebar.sidefixed {
	position: fixed;
	top: 120px;
}
.address > input {
	margin-bottom: 20px;
}
.address > select {
	margin-bottom: 20px;
}
.trialProducts .fc,
.student main .trialProducts form .fc {
	padding: 32px 24px;
	box-shadow: 1px 1px 3px 0 #aaa;
	min-height: 1000px;
	margin-top: 0px;
}
.student main .trialProducts form {
margin-top: 0;
}
.trialProducts.academic .row {
	justify-content: center;
}
.trialProducts.academic .row .col-sm-4 {
	width: 33.5%;
}
.trialProducts.academic .row table td {
	font-weight: normal;
	text-align: left;
}
.student main .trialProducts form .btn > aside,
.educational main .trialProducts form .btn aside {
	font-size: 12px;
}
.student main .trialProducts form .btn #confirm,
.educational main .trialProducts form .btn #confirm{
	background-color: #2b5486;
	color: #fff;
	padding: 20px 32px;
	cursor: pointer;
	font-size: 16px;
	border-radius: 3px;
	width: 196px;
	line-height: 1;
}
.compatibility-pages main {
	padding-bottom: 0;
}
.compatibility-pages main .compatibility-pages-as-header {
	height: 300px;
	background-image: url("/img/product/compatibility/as/a's_top.jpg");
	background-position: center;
	background-size: cover;
	-js-display: flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.compatibility-pages main .title {
	display: flex;
	align-items: center;
	margin: 40px auto;
	justify-content: space-between;
}
.compatibility-pages main .title figure {
	padding-left: 65px;
	margin-right: 100px;
}
.compatibility-pages main .title figure img {
	width: 180px;
}
.compatibility-pages main .title div h1 {
	color: #3C3C3C;
	font-family: sans-serif;
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 32px;
}
.compatibility-pages main .title div p {
	font-size: 14px;
	margin-bottom: 24px;
}
.compatibility-pages main .title div a {
	color: #417287;
}
.compatibility-pages main .title div a:hover {
	text-decoration: underline;
}
.compatibility-pages main .samples {
	box-shadow: 0 5px 8px -5px #ccc inset;
	display: flex;
	justify-content: space-around;
	padding: 40px 20px 0;
	margin-bottom: 48px;
}
.compatibility-pages main .samples figure {
	width: 48%;
}
.compatibility-pages main .samples figure img {
	width: 100%;
}
.compatibility-pages main .introduction {
	width: 640px;
	margin: auto;
	text-align: center;
	margin-bottom: 56px;
}
.compatibility-pages main .introduction h2 {
	color: #3C3C3C;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 40px;
}
.compatibility-pages main .introduction div {
	margin-bottom: 40px;
}
.compatibility-pages main .introduction div p {
	font-size: 14px;
	text-align: left;
	line-height: 2em;
}
.compatibility-pages main .introduction div p:not(:last-child) {
	margin-bottom: 1em;
}
.compatibility-pages main .introduction a {
	background-color: #417287;
	color: #fff;
	display: inline-block;
	padding: 8px 16px;
	box-shadow: 1px 1px 2px 0 #aaa;
	border-radius: 4px;
}
.compatibility-pages main .gallery {
	background-color: #000000;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 40px 0;
}
.compatibility-pages main .gallery figure {
	width: 48%;
	margin: 0 1%;
}
.compatibility-pages main .gallery figure img {
	width: 100%;
}
.compatibility-pages main .gallery figure iframe {
	width: 100%;
	height: 50vh;
}
.compatibility-pages main .gallery figure:last-child {
	margin-top: 24px;
}
.compatibility-pages main .description {
	background-image: url("/img/product/compatibility/as/urban_gausu.jpg");
	background-position: center;
	background-size: cover;
	padding: 64px 0;
}
.compatibility-pages main .description h2 {
	margin-bottom: 40px;
	color: #fff;
	font-weight: bold;
	text-align: center;
}
.compatibility-pages main .description > div {
	width: 760px;
	margin: auto;
}
.compatibility-pages main .description > div p {
	font-size: 13px;
	line-height: 3em;
	color: #fff;
}
.compatibility-pages main .description > div p:not(:last-child) {
	margin-bottom: 1.5em;
}
.compatibility-pages main .description > figure {
	margin: auto;
	width: 540px;
	margin-top: 24px;
}
.compatibility-pages main .description > figure iframe {
	display: block;
	width: 100%;
	height: 300px;
}
/*order, estimate, upgrade*/
.upgrade main form .fc dl dd em,
.order main form .fc dl dd em,
.estimate main form .fc dl dd em {
	font-weight: bold;
	margin: 0 4px;
	color: #417287;
}
.upgrade main form .fc dl dd aside,
.order main form .fc dl dd aside,
.estimate main form .fc dl dd aside {
	color: #999;
	margin-top: 8px;
	margin-bottom: 8px;
	font-size: 12px;
	background-color: #f5f5f5;
	padding: 8px;
}