@charset "utf-8";
* {
	min-height:0;
	min-width : 0;
	}

html,body{
	height: 100%;
    scrollbar-color: #ff7bd1 #000;
    scrollbar-width: thin;
	}

::-webkit-scrollbar {
	width: 10px;
	}

::-webkit-scrollbar-track {
	background: #000;
	}

::-webkit-scrollbar-thumb {
	background: #ff7bd1;
	}

body{
	height: 100%;
	font-family: YakuHanJP_Noto,Noto Sans JP,sans-serif;
	background-size: cover;
	font-size: 1em;
	letter-spacing: 0.2em;
	background-color: #000;
	color:#fff;
	background: #000 url("../images/img_230427_siwd_bg.jpg") center top no-repeat;
	background-size: cover;
	}

@media only screen and (max-width: 768px) {
	body{
		background-size: 200%;
		}
	}

a 			{color: #4fffaa;text-decoration: none;cursor: pointer;font-weight: 500;}
a:visited	{color: #4fffaa;}
a:hover		{color: #bcffdf;}
a:focus, *:focus { outline:none; }

rt {font-size: 0.4em}

p{padding: 1em;}

ul {
	padding: 1em 1em 1em 2em;
	list-style-type: square;
	}

li {}


table {
	border-collapse: collapse;
	margin: 2em auto 1em;
	}

th, td {
	border: none;
	padding: 5px 20px;
	vertical-align: top;
	}

th {
	word-break: keep-all;
	text-align: right;
	letter-spacing: 0;
	}

strong {color: #ff0;}
em {text-decoration: none;font-style: normal;}
strong, em {font-weight: bold;}

/*フェード*/
a {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all  0.5s ease;
	}


/*大枠*/
.primaryContainer {
	margin: 0 auto;
	padding: 0;
	position: relative;
	line-height: 1.8;
	overflow: hidden;
	/*max-width: 1280px;*/
	}

@media only screen and (max-width: 768px) {
	}

/*ヘッダ*/
header {
	padding: 0;
	/*box-sizing: border-box;
	width: 100%;
	position: fixed;
	display: flex;
	z-index: 888;
	padding: 0px 0;
	justify-content: space-between;
	flex-wrap: wrap;
	background-color: rgba(0,175,223, 0.3);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	border-bottom: 4px rgba(255,255,255, 0.1) solid*/
	}

header > p {
	padding: 0.25em 1em;
	text-align: right;
	}

/*消える時のアニメ*/
/*header.site-header{transition: .6s;z-index: 999;}
header.site-header.hide{transform: translateY(-100%);}*/

@media only screen and (max-width: 768px) {
	header > p {font-size: 0.8em;}
	header > p {font-size: 0.8em;}
	/*header {min-width: inherit;border-bottom: none;}*/
	}

.laguage a {
	display: inline-block;
	padding-left: 16px;
	letter-spacing: 0.025em;
	background: url("../images/img_230501_siwd_link_head.gif") left center no-repeat;
	vertical-align: middle;
	}


/*ナビゲーションメニューここから--------------------------------------------------------------------------*/
.menu-check-box, .menu-label, .mask-bg {display: none;}

nav.global-nav {
	margin: 0 auto;
	}

.global-nav__list {
	display: flex;
	letter-spacing: 0;
	margin: 0px 5px 0 0;
	}

.global-nav__list li a {
	display: block;
	padding: 0 2em;
	border-left: 1px solid rgba(0,0,0,0.3);
	border-right: 1px solid rgba(255,255,255,0.8);
	text-decoration: none;
	color: #fff;
	line-height: 1;
	letter-spacing: 0.13em;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	}
.global-nav__list li:first-child a {border-left: none;}
.global-nav__list li:last-child a {border-right: none;}

.global-nav__list li a.disabled {color: rgba(255,255,255,0.3);cursor: default;text-shadow: none;}


/*画面幅が狭くなったらハンバーガーメニュー化*/
@media only screen and (max-width: 768px) {
.menu-label {
	display: block;
	position: fixed;
	right: 10px;
	top: 10px;
	width: 50px; /* ボタンの高さ*/
	height: 50px; /* ボタンの幅 */
	z-index: 1000;
	cursor: pointer;
	background-color: rgba(105,224,255,1);
	box-shadow: 0px 0px 6px 0px rgba(0,109,180,1), 0px 0px 20px 0px rgba(0,109,180,0.8);
	}

.hamburger__line {
	position: absolute;
	left: 12px;
	width: 26px;
	height: 3px;
	background-color: #fff;
	transition: all .6s;
	}
	.hamburger__line--1 {top: 16px;}
	.hamburger__line--2 {top: 24px;}
	.hamburger__line--3 {top: 32px;}

.global-nav__list {
	display: block;
	position: fixed;
	right: -320px; /* これで隠れる */
	top: 0;
	width: 300px; /* スマホに収まるくらい */
	height: 100vh;
	padding-top: 40px;
	background-color: rgba(0,175,223, 0.5);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	border-left: 4px rgba(255,255,255, 0.1) solid;
	transition: all .6s;
	z-index: 999;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
	margin: 0;
	padding: 50px 0 0;
	list-style: none;
	}

.global-nav__list li {
	text-align: center;
	padding: 0 14px;
	}

.global-nav__list li a {
	display: block;
	padding: 16px 0;
	border-left: none;
	border-right: none;
	border-bottom: 1px solid #eee;
	text-decoration: none;
	color: #fff;
	}

/*マスク*/
.mask-bg {
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 120vh;
	z-index: 888;
background-color: rgba(0,175,223, 0.3);
	opacity: 0;
	visibility: hidden;
	transition: all .6s;
	}

	/*マスククリックでトグルを動作させるため*/
	.innner-label {
		display: block;
		width: 100%;
		height: 100%;
		cursor: pointer;
		}

/*メニューONの処理*/
.menu-check-box:checked ~ .global-nav__list {
	right: 0;
	}
	/*マスクを表示*/
	.menu-check-box:checked ~ .mask-bg {
		opacity: .7;
		visibility: visible;
		}
	/*トグルボタンのアニメ*/
	.menu-check-box:checked + .menu-label .hamburger__line--1 {
		transform: rotate(45deg);
		top: 24px;
		}
	.menu-check-box:checked + .menu-label .hamburger__line--2 {
		width: 0;
		left: 50%;
		}
	.menu-check-box:checked + .menu-label .hamburger__line--3 {
		transform: rotate(-45deg);
		top: 24px;
		}
}

/*ナビゲーションメニューここまで--------------------------------------------------------------------------*/



/*下部固定メニュー ここから------------------------------------------------------------------------------*/
#bottomMenu {
	position: fixed;
	bottom: 0;
	right: 0;
	padding: 0;
	margin: 0;
	width: 100%;
	}
/*ページトップに戻る*/
#bottomMenu a.gotop {
	display: block;
	position: absolute;
	bottom: 10px;
	right: 10px;
	height: 80px;
	width: 80px;
	background: rgba(105,224,255,1) url(../images/apps/arrow.svg) no-repeat center center;
	background-size: 70%;
	padding: 0;
	margin: 0 10px 10px 0;
	/*border: 3px rgb(255,255,255) solid;*/
	/*border-radius: 2px;*/
	box-shadow: 0px 0px 6px 0px rgba(0,109,180,1), 0px 0px 20px 0px rgba(0,109,180,0.8);
	font-size: 1em;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	color: #fff;
	text-decoration: none;
	z-index: 888;
	}
#bottomMenu a.gotop:hover {
	bottom: 15px;
	background-color: rgba(159,234,255,1);box-shadow: 0px 0px 6px 0px rgba(29,147,224,1), 0px 0px 20px 0px rgba(29,147,224,1);
	}

@media only screen and (max-width: 768px) {
	#bottomMenu a.gotop {height: 50px;width: 50px;margin: 0;}
	#bottomMenu a.gotop:hover {margin-bottom: 0;}
	}


/*SNSシェアボタン*/
.shareBox {
	width: 100%;
	text-align: center;
	position: relative;
	}

	.shareButtons {
		display: flex;
		justify-content: space-between;
		width: 260px;
		height: auto;
		margin: 0px auto;
		padding: 50px 0 50px;
		clear: none;
		z-index: 888;
		}

	.shareButtons>div>a {
		display: block;
		width: 50px;
		height: 50px;
		background-size: contain;
		background: no-repeat top center;
		}

	.shareButtons>div.fbBtn a 		{background-image: url("../images/img_230427_siwd_sns03_facebook.svg");}
	.shareButtons>div.tweetBtn a 	{background-image: url("../images/img_230427_siwd_sns02_twitter.svg");}
	.shareButtons>div.lineBtn a 	{background-image: url("../images/img_230427_siwd_sns01_line.svg");}

@media only screen and (max-width: 768px) {
	.shareButtons {
		width: 200px;
		padding-bottom: 20px;
		}
	}

/*下部固定メニューここまで-------------------------------------------------------------------------------*/



/*コンテンツ全体をラップ*/
main {
	}

section {
	box-sizing: border-box;
    /*max-width: 1280px;*/
	margin: 0 auto;
	padding: 0;
	position: relative;
	}

@media only screen and (max-width: 768px) {
	}

.headCorpLogo {
	padding: 0;
	text-align: center;
	}

.headCorpLogo > img {
	width:5%;
	max-width: 80px;
	}


h1 {
	position: relative;
	z-index: 9;
	width: 100%;
	padding: 35px 0 0 0;
	margin: 0;
	line-height: 1.1;
	letter-spacing: 0.025em;
	text-align: center;
	font-size: 48px;
	font-weight: normal;
	font-family: 'Press Start 2P', cursive;
	animation: fadeIn 2s ease 0s 1 normal;
	}

@keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
	}



h1 > img {
	display: block;
	width: 50%;
	max-width: 637px;
	margin: 0 auto 1.0%;
	}

section.commonHead h1 img {
	width: 40%;
	max-width: 400px;
	}

@media only screen and (max-width: 1600px) {
	h1 {
		padding: 2% 0 0 0;
		font-size: 3vw;
		}
	}


@media only screen and (max-width: 768px) {
	.headCorpLogo > img {
		width:15%;
	}
	
	h1 {
		padding-top: 6%;
		font-size: 6vw;
		}

	h1>img {
		width: 90%;
		margin-bottom: -3%;
		}
	
	section.commonHead h1 img {
		width: 50%;
		margin-bottom: -5%;
		}
	
	}


section.headContent, section.commonHead {
	position: relative;
	margin-bottom: 100px;
	}

section.headContent::after {
	content: "";
	display: block;
	width: 100px;
	height: 66px;
	position: absolute;
	bottom: 0;
	left: calc(50% - 50px);
	background: url("../images/img_230427_siwd_arrow.png") top center no-repeat;
	background-size: cover;
	}

@media only screen and (max-width: 768px) {
	section.headContent::after {
		bottom: -50px;
		}
	}

@media only screen and (max-width: 480px) {
	
	section.headContent {
		margin-bottom: 150px;
		}

	section.headContent::after {
		width: 60px;
		height: 40px;
		bottom: -80px;
		left: calc(50% - 30px);
		}
	}


section.headContent > div > img {
	position: relative;
	display: block;
	width: 100%;
	}



/*地球儀*/
.obj-globe {
	position: relative;
	z-index: 5;
	width: 60%;
	max-width: 955px;
	margin: -480px auto 0;
	animation: gloveislife 3s linear 0s infinite normal;
	}

@keyframes gloveislife {
	0% {opacity: 1;}
	50% {opacity: 0.6;}
	100% {opacity: 1;}
	}


/*インベーダー*/
.obj-si01, .obj-si02, .obj-si03 {
	position: absolute;
	}

.obj-si01 {
	z-index: 7;
	width: 18%;
	max-width: 287px;
	bottom: 18%;
	left: calc(50% - 400px);
	}

.obj-si02 {
	z-index: 3;
	width: 9%;
	max-width: 143px;
	bottom: 52%;
	left: calc(50% - 500px);
	}

.obj-si03 {
	z-index: 1;
	width: 6%;
	max-width: 96px;
	bottom: 18%;
	right: calc(50% - 380px);
	}


@media only screen and (max-width: 1600px) {
	.obj-globe {
		margin: -30% auto 0;
		}
	
	.obj-si01 {
		left: calc(50% - 25%);
		}
	
	.obj-si02 {
		left: calc(50% - 31%);
		}

	.obj-si03 {
		right: calc(50% - 24.5%);
		}
	}


@media only screen and (max-width: 768px) {
	.obj-globe {
		width: 100%;
		margin-top: -50%;
		}
	
	.obj-si01 {
		width: 33%;
		bottom: 6%;
		left: calc(50% - 40%);
		}

	.obj-si02 {
		width: 12%;
		bottom: 50%;
		left: calc(50% - 47%);
		}

	.obj-si03 {
		width: 10%;
		bottom: 18%;
		right: calc(50% - 41%);
		}	
	}


@media only screen and (max-width: 480px) {
	.obj-globe {
		margin-top: 0;
		}	
	
	.obj-si01 {
		width: 38%;
		bottom: 0%;
		left: calc(50% - 40%);
		}

	.obj-si02 {
		width: 14%;
		bottom: 44%;
		left: calc(50% - 43%);
		}

	.obj-si03 {
		width: 13%;
		bottom: 8%;
		right: calc(50% - 41%);
		}	
	}



.imv01 {
	animation: moveA 5s ease-in-out 0s infinite normal;
	}

@keyframes moveA {
	0% {transform: translateY(15px);}
	50% {transform: translateY(0);}
	100% {transform: translateY(15px);}
	}


.imv02 {
	animation: moveB 6s ease-in-out 0s infinite normal;
	}

@keyframes moveB {
	0% {transform: translateY(0px);}
	50% {transform: translateY(10px);}
	100% {transform: translateY(0px);}
	}


.imv03 {
	animation: moveC 4s ease-in-out 0s infinite normal;
	}

@keyframes moveC {
	0% {transform: translateY(0px);}
	50% {transform: translateY(10px);}
	100% {transform: translateY(0px);}
	}




h2 {
	padding: 0;
	font-size: 1.6em;
	font-weight: normal;
	line-height: 1.4;
	letter-spacing: 0;
	margin-bottom: 1em;
	text-align: center;
	color: #fff;
	font-family: 'Press Start 2P', cursive , YakuHanJP_Noto,Noto Sans JP,sans-serif;
	}

h2.small {
	font-size: 1.4em;
	}

h2 > span {
	font-size: 0.7em;
	}



@media only screen and (max-width: 768px) {
	h2 {font-size: 1.4em;}
	h2.small {font-size: 1.1em;
	}

	}
@media only screen and (max-width: 480px) {
	}

h3 {
	font-size: 0.9em;
	letter-spacing: 0.01em;
	font-weight: 600;
	}

h4 {
	font-size: 0.8em;
	letter-spacing: 0.01em;
	font-weight: 600;
	}

h5 {
	font-size: 0.8em;
	letter-spacing: 0.01em;
	font-weight: 500;
	}

h6 {}



/*Twitter*/
.twitter {
	margin: 0 auto;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	border-radius: 6px;
	border: 1px rgba(0,0,0,0.25) solid;
	}

.twitter iframe {width: 740px!important;height: auto;}

.common, .movieArea {
	box-sizing: border-box;
	width: 95%;
	padding: 40px 60px;
	max-width: 900px;
	border-top-right-radius: 10px;
	border-bottom-left-radius: 10px;
	margin: 0 auto 80px;
	background: rgb(33,100,121);
	background: url("../images/img_230427_siwd_corner_01.png"), url("../images/img_230427_siwd_corner_02_pc.png"), url("../images/img_230427_siwd_corner_03_pc.png"),linear-gradient(to top, rgba(33,100,121,0.5) 0%, rgba(96,39,144,0.4) 100%);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: 25px 30px, top right,bottom left, top left;
	background-size: 5%, 40%, 40%, auto;
	}

@media only screen and (max-width: 768px) {
	.common, .movieArea {
		padding: 40px 22px 60px;
		background: url("../images/img_230427_siwd_corner_01.png"), url("../images/img_230427_siwd_corner_02_sp.png"), url("../images/img_230427_siwd_corner_03_sp.png"),linear-gradient(to top, rgba(33,100,121,0.5) 0%, rgba(96,39,144,0.4) 100%);
		background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
		background-position: 15px 40px, top right,bottom left, top left;
		background-size: 8%, 40%, 40%, auto;
		}
	}


.document p, .document ul {
	font-size: 0.8em;
	letter-spacing: 0.02em;
	}

/*FAQ dl*/
.faq {
	padding: 1em;
	letter-spacing: 0.01em;
	}
.faq dt {
	color:aquamarine;
	letter-spacing: 0;
	}

.faq dt:before {
	content: "Q.";
	font-weight: 500;
	margin-right: 0.5em;
	}

.faq dd {
	font-size: 0.8em;
	letter-spacing: 0.01em;
	padding-left: 1em;
	margin-bottom: 2em;
	}

.faq dd:before {
	font-size: 1.2em;
	content: "A.";
	font-weight: 500;
	margin-right: 0.5em;
	}



/*youtube*/
.youtube {
	margin: 0 auto;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	}

/*縦長*/
.youtube2 {
	margin: 0 auto;
	position: relative;
	padding-bottom: 178%;
	height: 0;
	overflow: hidden;
	}

.youtube iframe, .youtube2 iframe {
	position:absolute !important;
	top:0 !important;
	left:0 !important;
	width:100% !important;
	height:100% !important;
	}

.hmovieWrap {
	max-width: 400px;
	margin: 0 auto;
	}

.captionBox {
	box-sizing: border-box;
	width: 95%;
	padding: 50px 60px;
	max-width: 900px;
	margin: 0 auto 40px;
	border: 2px #4fffaa solid;
	border-top-right-radius: 40px;
	border-bottom-left-radius: 40px;
	letter-spacing: 0;
	text-align: left;
	font-weight: normal;
	position: relative;
	background: url("../images/img_230427_siwd_globe-small.png") center 130px no-repeat;
	background-size: 46%;
	}

.captionBox > h2 {
	text-align: left;	
	}

.captionBox > h2.rightside {
	width: 50%;
	margin-left: auto;
	}

.captionBox > .text {
	width: 50%;
	padding: 0;
	margin-left: auto;
	}

.spimage {
	position: absolute;
	z-index: 7;
	top: -5%;
	left: -40px;
	width: 48%;
	}

.spimage > img, .spOnlyDeco > img {
	display: block;
	width: 100%;
	}

.spOnlyDeco {
	display: none;
	}


@media only screen and (max-width: 768px) {
	.captionBox {
		padding: 50px 20px;
		font-size: 0.8em;
		background-position: center 15%;
		background-size: 70%;
		}
	.captionBox > h2.rightside {
		width: 60%;
		margin-top: 10%;
		margin-bottom: 40%;
		position: relative;
		z-index: 9;
		}
	
	.captionBox > .text {
		width: 100%;
		padding: 0;
		margin-left: auto;
		}
	
	.spimage {
		width: 50%;
		top: -4%;
		left: -20px;
		}
	
	.spOnlyDeco {
		display: block;
		position: absolute;
		z-index: 9;
		top: 15%;
		right: 15%;
		width: 20%;
		}
	
	}


@media only screen and (max-width: 480px) {
	.spimage {
		width: 55%;
		top: -2%;
		left: -20px;
		}
	.spOnlyDeco {
		top: 18%;
		}
	}

/*汎用ボタン*/

.buttonBox {
	display: flex;	
	flex-wrap: wrap;
	justify-content: center;
	width: 95%;
	margin: 3em auto;
	}

.button {
	flex-basis: 300px;
	margin: 0 0 20px;
	padding: 0;
	font-family: 'Press Start 2P', cursive , YakuHanJP_Noto,Noto Sans JP,sans-serif;
	}

.button a {
	display: block;
	box-sizing: border-box;
	width: 95%;
	padding: 10px 20px;
	margin: 0 auto;
	background-color: rgba(105,224,255,1);
	box-shadow: 0px 0px 6px 0px rgba(0,109,180,1), 0px 0px 20px 0px rgba(0,109,180,0.8);
	font-size: 1.1em;
	font-weight: normal;
	line-height: 1.4;
	text-align: center;
	letter-spacing: 0.01em;
	color: #002944;
	/*color: #fff;*/
	text-decoration: none;
	/*text-shadow: 0 0 5px rgba(0,0,0,0.6);*/
	}

.button.tweet a {
	background-color: #1da1f2;
	color: #fff;
	}

.button.disabled a {
	background-color: #666;
	box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);
	color:#333;
	}

.button a:hover {background-color: rgba(159,234,255,1);box-shadow: 0px 0px 6px 0px rgba(29,147,224,1), 0px 0px 20px 0px rgba(29,147,224,1);}
.button.disabled a:hover {box-shadow: 0px 0px 0px 0px rgba(0,0,0,0);cursor:default;}


a.inlineButton {
	display: inline-block;
	padding: 0.25em 3em;
	background-color: #fff;
	color: #000;
	animation: blink 1s ease-in-out 0s infinite normal;
	}

a.inlineButton:hover {
	animation: none;
	}

@keyframes blink {
	0% {background-color: #fff;}
	50% {background-color: #666;}
	100% {background-color: #fff;}
	}


/*スマホサイズで適用したりしなかったり用*/
.sponly {display:none;}
.nosp{display:inherit;}

@media only screen and (max-width: 768px) {
	.sponly {display: block;}
	.nosp {display:none;}
	}

/*記事用のいろいろな定義*/	
.small	{font-size: 0.9em;}
.large	{font-size: 1.2em;}
.big	{font-weight: bold;font-size: 1.8em;}
.morebig {font-weight: bold;font-size: 2.2em;}
@media only screen and (max-width: 768px) {
	.big	{font-size: 1.4em;}
	.morebig {font-size: 1.8em;}
}
.center	{text-align: center;}
.spaced {padding: 1em;}
.left	{text-align: left;}
.right	{text-align: right;}
.attention {color: #FF0000;}
.clear {clear: both;}
.url{color: #FF0308;font-style: italic;}
.bold{font-weight: bold;}
.sun {color: #f00;}
.sat {color: #008FEB;}
.price {font-size: 1.4em;font-weight: bold;}
.markup{display:inline-block;font-size: 0.9em;color:#f60;}
.new {display:inline-block;background-color: #d71318;font-size: 0.6em;font-weight: bold;color:#fff;text-shadow: none;vertical-align:text-top;padding: 3px 10px;border-radius: 10px;margin-left: 0.5em;}


/*フッター ここから------------------------------------------------------------------------------*/
footer {
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 100px 0 100px;
	background-size: cover;
	text-align: center;
	color: #eee;
	letter-spacing: 0.1em;
	font-size: 0.7em;
	position: relative;
	}


.corporateLogos {
	display: flex;
	justify-content: center;
	}

.corporateLogos > div {
	flex-basis: 20%;
	max-width: 240px;
	}


.corporateLogos > div img {
	display: block;
	width: 80%;
	margin: 0 auto;
	} 

@media only screen and (max-width: 768px) {
.corporateLogos > div {
	flex-basis: 40%;
	}
}


footer ul {
	flex: 1;
	height: 1em;
	padding: 0;
	margin: 30px auto 5px;
	text-align: center;

	}

footer ul li {
	display: inline-block;
	list-style-type: none;
	border-right: 1px #fff solid;
	padding: 0 5px;
	text-align: center;
	line-height: 1;
	}

footer ul li:last-child {
	border: none;
	}

footer ul li a, footer ul li a:visited,footer ul li a:hover {
	color: #fff;
	text-decoration: none;
	}

footer p.copyright {
	margin: auto;
	font-size: 0.8em;
	}

@media only screen and (max-width: 768px) {
	footer {
		padding-top: 50px;
		font-size: 0.6em;
		}
	}


.deco01, .deco02, .deco03 {
	position: absolute;
	}

.deco01 > img, .deco02 > img, .deco03 > img {
	display: block;
	width: 100%;
	}

.deco01, .deco03 {
	width: 15%;
	max-width: 180px;
	top: 80px;
	left: 0;
	}

.deco02 {
	width: 12%;
	max-width: 145px;
	top: 0;
	right: 0;
	}


.imv04 {
	animation: moveD 4s ease-in-out 0s infinite normal;
	}



@media only screen and (max-width: 768px) {
	.deco01 {
		display: none;
		}
	
	.deco02 {
		width: 18%;
		top: 20px;
		left: 0;
		}

	.deco03 {
		width: 20%;
		top: 20px;
		right: 0px;
		left: auto;
		}
	
	
	.imv04 {
		animation: moveDs 4s ease-in-out 0s infinite normal;
		}
	}

@keyframes moveD {
	0% {transform: translateY(0px);}
	50% {transform: translateY(10px);}
	100% {transform: translateY(0px);}
	}

@keyframes moveDs {
	0% {transform: translateY(0px) scale(-1, 1);}
	50% {transform: translateY(10px) scale(-1, 1);}
	100% {transform: translateY(0px) scale(-1, 1);}
	}



/*フッター ここまで------------------------------------------------------------------------------*/



/*FlexBox*/
.flexBox {
	display: flex;
	max-width: 1600px;
	margin: 0 auto 2em;
	box-sizing: border-box;
	justify-content: space-around;
	/*align-items: flex-start;*/
	align-items:stretch;
	flex-wrap: wrap;
	}

	.flexBox>div {
		display: block;
		box-sizing: border-box;
		flex-basis: 25%;
		height: auto;
		padding: 0 0;
		margin: 0 0 0;
		word-break: normal;
		word-wrap: normal;
		}

.whitebox {
	background-color: #fff;
	padding: 20px;
	border-radius: 16px;
	}

.flexBox > div > img {
	display: block;
	width: 100%;
	}

.bottom {align-items: flex-end;}
.top {align-items: flex-start;} 

.boxset5>div {flex-basis: 20%;}
.boxset4>div {flex-basis: 25%;}
.boxset3>div {flex-basis: 33.3%;}
.boxset2>div {flex-basis: 50%;}
.boxset2>div.largebox {flex-basis: 60%;}
.ss3block {margin-top: 3em;}
.ss3block>div {flex-basis: calc(100% / 3);}


@media only screen and (max-width: 768px){
	.whitebox {padding: 10px;border-radius: 12px}
	.boxset4>div, .boxset5>div {flex-basis: 33.3%;}
	.boxset3>div {flex-basis: 50%;}
	.boxset2>div {flex-basis: 100%;}
	.boxset2>div.largebox {flex-basis: 94%;}
	}

@media only screen and (max-width: 480px){
	.boxset3>div, .boxset4>div, .boxset5>div {flex-basis: 50%;}
	.boxset2>div {flex-basis: 100%;}
	}


/*フェードイン*/
.fadein{
	animation-name: fadeUpAnime;
	animation-timing-function: ease-out;
	animation-delay: 0.2s;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	opacity: 0;
	}

@keyframes fadeUpAnime{
	from {opacity: 0;transform: translateY(100px);}
	to {opacity: 1;transform: translateY(0);}
	}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadebox {opacity: 0;}


/*2021.6.29 ダウンロードリンク追加*/
ul.dllink {
	list-style-type: none;
	display: flex;
	justify-content: center;
	padding: 0;
	margin: 0 0 60px;
	} 

ul.dllink > li {
	padding: 0;
	margin: 0;
	line-height: 1;
	}

ul.dllink > li.disabled {
	opacity: 0.25;
	}

ul.dllink > li img {
	display: block;
	margin: 0 10px;
	}

.bn-googlePlay {max-width: 142px;}
.bn-appStore {width: 121px;}


.arcorecaption {
	display: block;
	margin-top: 30px;
	font-size: 0.8em;
	}
.arcorelogo {
	width: 60%;
	max-width: 300px;
	margin: 0px 0 0;
	}
