html {
	overflow-y: scroll;
}

body {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	font-family:Verdana, Geneva, Tahoma, sans-serif;
	font-size: 15px;
	line-height: 2.2em;
	color: #333333;
	background-color: #ffffff;
}

a, a:link, a:visited, a:hover, a:active, a:focus {
	text-decoration: none;
	color: #023047;
}
a:hover {
	opacity: 0.6;
}

p {
	margin: 12px 0;
	padding: 0;
	line-height: 200%;
}

h2, h3, h5 {
	font-weight: bold;
	color: #023047;
}

h1 {
	margin: 0;
	padding: 0;
	font-size: 34px;
	font-weight: bold;
	line-height: 1.2em;
}

h2 {
	font-size: 28px;
	margin: 50px 0 30px;
	padding: 0;
}

h3 {
	font-size: 22px;
	margin: 50px 0 4px 0;
}

h4 {
	font-size: 20px;
	font-weight: bold;
	margin: 50px 0 4px 0;
	color: #219ebc;
}

h5 {
	font-size: 16px;
	margin: 30px 0 0 0;
}

h5::before {
	font-size: 16px;
	content: "--";
	color:#8ECAE6;
	background-color: #8ECAE6;
	background: linear-gradient(to bottom, #FFFFFF 15%, #8ECAE6 15%, #8ECAE6 85%, #FFFFFF 85%);
	margin: 0 3px 0 0;
}

hr {
	width: 100%;
	height: 3px;
	margin: 60px 0 40px 0;
	background-color: #023047;
	border: none;
}

ul {
	margin: 5px 0 20px;
	line-height: 180%;
}
li {
    position: relative;
	padding-left: 12px;
	margin-bottom: 10px;
	list-style-type: none;
}
li::before {
    position: absolute;
    left: 0;
    top: 9px;
    content: "";
    border-radius: 50%;
    width: 7px;
    height: 7px;
    background-color: #219ebc;
    display: block;
}

table {
	width: 750px;
	margin: 30px auto;
	border-collapse: collapse;
}
td {
	width: 200px;
	padding: 8px;
	font-size: 15px;
	border-left: 1px solid #023047;
}
.BorderNone {
	border: none;
}
.BottomBorderBold {
	border-bottom: 3px solid #023047;
}
.BottomBorder {
	border-bottom: 1px solid #023047;
}

.TableHeader th {
	padding: 0 10px 0;
}
.TableHeader div {
	padding: 8px 0;
}
.TableSubHeader {
	text-align: left;
	font-weight: normal;
	font-size: 13px;
	border: none;
	padding: 0 0 0 13px;
}

.ScrollArea {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}



.Header {
	margin: 0;
	padding: 20px 50px 5px;
	display: flex;
}
.TitleLogo {
	width: 90%;
}
.TitleLogo img {
	width: 160px;
}
.HeaderMenuBlock {
	width: 80%;
}
.HeaderMenuButton {
	display: none;
}
.HeaderMenu, .FooterMenu {
	text-align: right;
}
.HeaderMenu {
	font-size: 17px;
	font-weight: bold;
	white-space: nowrap;
}
.HeaderMenu a {
	margin: 0 0 0 1em;
}
.Language img {
	width: 15px;
	margin: 0 0 -3px;
}

.Menu {
	width: 100%;
	margin: 0;
	padding: 10px 0 10px 0;
	background-color: #219ebc;
	text-align: center;
	font-size: 16px;
	display: none;
	overflow: hidden;
	position: absolute;
	left: 0px;
	border-bottom: 1px solid;
	border-color: #ffffff;
	animation-duration: 0.2s;
	animation-name: OpenMenu_PC;
}
.Menu a, .Menu a:link, .Menu a:visited, .Menu a:hover, .Menu a:active {
	margin: 0 2em;
}
.MenuItem {
	display: inline;
}

.WhiteLink a, .WhiteLink a:link, .WhiteLink a:visited, .WhiteLink a:hover, .WhiteLink a:active {
	color: #ffffff;
}



.Leader {
	padding: 40px 50px 40px;
	width: auto;
	color: #ffffff;
	background-color: #219ebc;
}
.LeadBox {
	width: 100%;
	display: flex;
}
.LeadMain {
	width: 55%;
}



.DownloadButton {
	width: 100%;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	margin: 14px auto;
	padding: 6px 0;
	color: #ffffff;
	background-color: #023047;
	border-radius: 8px;
	display: block;
}
.Download {
	display: flex;
	align-items: center;
}
.Download a {
	width: 330px;
}
.Download span {
	margin-left: 8px;
}

.PaleButton, .DetailButton {
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	padding: 1px 6px 1px 6px;
	color: #023047;
	border-radius: 6px;
	display: block;
}
.PaleButton {
	width: 100px;
	margin: 20px 0 0 0;
	background-color: #C7E7FF;
}
.DetailButton {
	width: 200px;
	margin: 10px 0 0 0;
	background-color: #FFFFFF;
}
.FreeBox {
	vertical-align: top;
	text-align: center;
	font-size: 15px;
	font-weight: normal;
	margin: 5px;
	padding: 4px 12px 5px 12px;
	color: #ffffff;
	background-color: #023047;
}
.TryBeta {
	width: 330px;
	font-size: 26px;
	font-weight: bold;
	line-height: 120%;
	text-align: center;
}
.TryBetaHead {
	margin: 0 0 10px;
	font-size: 28px;
	color: #ffb703;
}
.BetaLeft .TryBeta {
	margin: 0 auto;
}
.BetaLeft.es, .TryBeta.es {
	margin: 0;
}
.Main {
	width: auto;
	padding: 38px 50px 10px;
	margin: 0 auto;
}
.Beta {
	width: 100%;
	display: flex;
	color: #023047;
}
.BetaLeft {
	width: 55%;
	padding: 16px 0 0;
	white-space: nowrap;
}
.BetaRight {
	width: 45%;
}
.BetaCenter {
	width: 80%;
	padding: 20px 0 10px 0;
}

.VerticalBlock {
	margin: 12px;
	line-height: 200%;
	display: block;
}



.Contents {
	width: 80%;
	margin: 0 0 70px 0;
	padding: 20px 30px;
	white-space: nowrap;
	border-top: 2px solid #D1D0B8;
	border-bottom: 2px solid #D1D0B8;
}

.Contents a {
	display: block;
	font-weight: bold;
}



.Detail, .Details1, .Details2, .Details3 {
	margin: 20px 0 20px 0;
	width: auto;
	display: flex;
	box-sizing: border-box;
	border-radius: 12px;
}
.DetailText {
	width: 55%;
	padding: 0;
}
.DetailText p {
	margin-bottom: 30px;
}
.DetailImage {
	width: 45%;
	padding: 30px 20px 0 50px;
	text-align: center;
	margin: 0 auto;
}



.Footer {
	margin: 30px 0 0;
	padding: 30px 70px 0 70px;
	background-color: #023047;
}
.FooterBlock {
	display: flex;
}
.FooterTwitter {
	width: 5%;
}
.FooterMenu {
	width: 95%;
	font-size: 15px;
}
.FooterTwitter img {
	width: 36px;
	margin: -8px 0 0 0;
}
.FooterMenu a, .FooterMenu a:link, .FooterMenu a:visited, .FooterMenu a:hover, .FooterMenu a:active {
	margin: 0 0 0 1em;
	color: #ffffff;
}
.FooterCopyright {
	margin: 0;
	padding: 60px 0 15px 0;
	font-size: 16px;
	color: #ffffff;
}



/* PCで狭い場合 */
@media screen and (max-width: 900px) {

	.Header, .Leader, .Main {
		padding-left: 20px;
		padding-right: 20px;
	}

	.LeadText {
		font-size: 16px;
	}

	.Beta {
		font-size: 13px;
	}
	.BetaLeft {
		width: 60%;
		padding: 10px 0 0;
	}
	.BetaRight {
		width: 40%;
	}

	.TryBeta, .Download a {
		width: 280px;
	}

	.FooterMenu {
		font-size: 13px;
		white-space: normal;
	}

}

	

/* スマホ版 */
@media screen and (max-width: 760px) {

	body {
		min-width: 300px;
		font-size: 15px;
		line-height: 2em;
		margin: 0 auto;
	}

	p {
		width: 100%;
		padding: 0;
		line-height: 190%;
	}

	a {
		line-height: 190%;
	}

	h1 {
		font-size: 36px;
		width: 100%;
		margin: 1em 0 0;
		white-space: normal;
	}

	h2 {
		text-align: center;
		font-size: 32px;
	}

	h3 {
		font-size: 24px;
		margin: 34px 0 10px 0;
	}

	.Header, .Footer {
		padding: 16px 20px 0;
	}

	.TitleLogo {
		width: 40%;
	}
	.TitleLogo img {
		width: 140px;
	}
	.HeaderMenu {
		font-size: 20px;
		padding: 0.3em 1em 0.4em 0;
		display: none;
		overflow: hidden;
		position: absolute;
		top: 49px;
		right: 0px;
		background-color:  #ffffff;
		animation-duration: 0.2s;
		animation-name: OpenHeaderMenu;
	}
	.HeaderMenuBlock {
		width: 60%;
	}
	.HeaderMenuButton {
		text-align: right;
		white-space: nowrap;
		display: block;
		width: auto;
		position: absolute;
		top: 16px;
		right: 6px;
		padding: 0;
		margin: 0;
	}
	.HeaderMenuButton a {
		padding: 15px 15px 10px;
	}

	.Language img {
		width: 22px;
	}
	
	.Menu {
		top: 56px;
		font-size: 18px;
		animation-name: OpenMenu;
	}
	.Menu a, .Menu a:link, .Menu a:visited, .Menu a:hover, .Menu a:active {
		margin: 0;
	}
	.MenuItem {
		display: block;
	}



	.Leader {
		padding: 15px 20px 15px;
	}
	.LeadBox {
		display: block;
	}
	.Leader, .FooterBlock {
		display: block;
		line-height: 240%;
	}
	.LeadMain, .FooterBlock, .LeadImage {
		width: 100%;
	}
	.LeadImage img {
		padding: 0;
		width: 240px;
	}
	.LeadText, .LeaderDetails {
		padding: 1em 0 1em 0;
		font-size: 15px;
		white-space: normal;
	}



	.DownloadButton {
		width: 100%;
		font-size: 24px;
		margin: 20px auto;
		padding: 0;
		border-radius: 10px;
	}
	.Download .DownloadButton {
		padding: 12px 0;
	}
	.PaleButton, .DetailButton {
		margin: 30px auto;
		padding: 0;
		font-size: 18px;
		border-radius: 10px;
	}
	.PaleButton {
		width: 200px;
	}
	.DetailButton {
		width: 270px;
	}

	.FreeBox {
		font-size: 18px;
		display: inline-block;
	}
	
	.TryBeta {
		width: 100%;
		padding: 0;
	}
	.BetaLeft.es, .TryBeta.es {
		margin: 0 auto;
	}
	
	.Download {
		text-align: center;
		margin: 0;
		padding: 0;
	}



	.Main {
		padding: 30px 30px 10px;
	}
	.Beta {
		width: 100%;
		display: block;
		margin: 0 auto;
		padding: 0;
		white-space: normal;
	}
	.BetaCenter, .BetaLeft, .BetaRight {
		width: 95%;
		padding: 0;
		margin: 0 auto;
	}



	.Detail, .Details1, .Details2, .Details3 {
		width: 100%;
		display: block;
		background-position: right bottom;
	}
	.DetailText {
		width: 100%;
	}
	.DetailImage {
		width: 100%;
		padding: 20px 0 0;
	}
	.DetailImage img {
		max-width: 280px;
		width: 100%;
	}



	.FooterTwitter {
		width: auto;
		padding: 12px;
	}
	.FooterMenu {
		width: auto;
		padding: 0 0 20px 0;
		text-align: left;
		font-size: 15px;
	}
	.FooterMenu a {
		display: block;
	}
	.FooterCopyright {
		padding: 10px 0 20px 0;
		font-size: 18px;
	}

}



/* アニメーション */
@keyframes OpenHeaderMenu {
	0% {
		height: 0;
		opacity: 0.5;
	}
	100% {
		height: 114px;
		opacity: 1;
	}
}

@keyframes OpenMenu_PC {
	0% {
		height: 0;
		opacity: 0.4;
	}
	100% {
		height: 33px;
		opacity: 1;
	}
}

@keyframes OpenMenu {
	0% {
		height: 0;
		opacity: 0.4;
	}
	100% {
		height: 103px;
		opacity: 1;
	}
}
