@charset 'utf-8';
@media screen and (max-width:1360px){
	.catchcopy-area h2 {
		font-size: 3.2rem;
	}
	section.s01 .item-list .item {
		width: calc(33.333% - 20px);
		margin: 10px;
	}
	section.feature .box.box-cont1.box-cont-sp1 {
		padding-top: 60px;
	}
}
@media screen and (max-width:960px){
	.sp-none{
		display:none!important;

	}
	.kv .box{
		width:100%;
		/* height:146.67vw; */

	}
	.kv .box .movie{
		width:100%;
		height:146.67vw;
		overflow:hidden;

	}
	.kv .box .movie video{
		width:auto;
		height:146.67vw;
		overflow:hidden;

	}
	.kv .box .text-block{
		top:50%;
		left:50%;
		transform:translateX(-50%) translateY(-50%);
		text-align:center;
		width:100%;

	}
	.kv .box .text-block .desc{
		font-size:4.8vw;
		font-weight:700;
		margin-bottom:0;

	}
	.kv .box .text-block .catch{
		font-size:8vw;
		font-weight:700;
		line-height:1.2;

	}
	.kv .box .text-block .medal-button{
		margin:0;

	}
	.kv .box .text-block .medal-button .medal{
		width:66.67vw;
		margin:1em auto;

	}
	.kv .box .text-block .medal-button .btn{
		margin:0 auto;
		width:67.73vw;
		padding:1.8em 0;
		font-size:4vw;

	}
	.kv .box .text-block .link-button{
		-ms-flex-pack:center;
		-webkit-justify-content:center;
		justify-content:center;

	}
	.kv .box .text-block .link-button .btn{
		width:44.8vw;
		min-width:8em;
		font-size:3.46667vw;
		box-sizing:border-box;

	}
	.kv .box .text-block .link-button .btn:first-child{
		margin-right:2.6667vw;

	}
	.kv .box .text-block .link-button .btn.white{
		color:#00a9e0;
		border:1px solid #00a9e0;

	}
	.kv .box .movie .sp-image{
		overflow:hidden;

	}
	.kv .box .movie .img-wrap{
		z-index:3;
		opacity:0;
		width:100%;
		height:146.67vw;
		background-position:center center;
		background-repeat:no-repeat;
		background-size:cover;
		position:absolute;
		left:0;
		top:0;
		-webkit-animation:spkvanime 30s ease 0s infinite;
		animation:spkvanime 30s ease 0s infinite;

	}
	.kv .box .movie .img-wrap:nth-of-type(2){
		-webkit-animation-delay:6s;
		animation-delay:6s;

	}
	.kv .box .movie .img-wrap:nth-of-type(3){
		-webkit-animation-delay:12s;
		animation-delay:12s;

	}
	.kv .box .movie .img-wrap:nth-of-type(4){
		-webkit-animation-delay:18s;
		animation-delay:18s;

	}
	.kv .box .movie .img-wrap:nth-of-type(5){
		-webkit-animation-delay:24s;
		animation-delay:24s;

	}
	.kv .box .btn{
		font-size:1em;
		width:auto;
		padding:1em;
		min-width:none;
	}
	.kv .box .btn.en{
		width:90%;
		box-sizing:border-box;
	}
	@keyframes spkvanime{
		0%{
			opacity:0;
		}
		10%{
			opacity:1;
		}
		20%{
			opacity:1;
		}
		30%{
			opacity:0;
			z-index:2;
		}
		100%{
			opacity:0;
			z-index:2;
		}
	}
	.kv.cm{
		background:transparent radial-gradient(closest-side at 50% 50%,#fff 0,#d1d3db 100%) 0 0 no-repeat padding-box;
	}
	section.kv.cm {
		padding-top: 120px;
		background: #FFFFFF;
		margin-top: 0;
	}
	.kv.cm:before{
		background:transparent linear-gradient(0deg,#f4f5F700 0,#abadb8 100%) 0 0 no-repeat padding-box;
		content:"";
		display:block;
		height:23vw;
		width:100%;
		background-size:cover;
		position:absolute;
		left:0;
		top:0;
	}
	.kv.cm .box{
		/* height:100vh; */
	}
	.kv.cm .box .text-block{
		position:absolute;
		z-index:9;
		top:20vw;
		left:50%;
		transform:translateX(-50%);
		color:#1c2438;
	}
	.kv.cm .box .person-wrap{
		position:absolute;
		left:50%;
		right:auto;
		bottom:0;
		transform:translateX(-50%);
		width:70%;
	}
	.kv.cm .box .person-wrap img{
		width:100%;
		height:auto;
	}
	.kv .box figure.main_hero img {
		margin-bottom: 60px;
	}
		section.kv.cm {
		padding: 120px 20px 20px;
	}
	section.kv.cm .box {
		display: block;
	}
	.catchcopy-area h2 {
		font-size: 8vw;
	}
	.catchcopy-area p.fadein.show {
		font-size: 0.8rem;
		line-height: 1.7;
		margin-bottom: 40px;
	}
	.kv .box .btn {
		width: calc(50vw - 60px);
		font-size: 0.8rem;
	}
	.kv .box figure.main_hero img {
		margin: 40px auto;
		max-width: 80vw;
		display: block;
	}
	section.banner.swiper-container.hide_if_en.swiper-container-initialized.swiper-container-horizontal.swiper-container-autoheight {
		padding: 20px 0;
		background: #F5F5F9;
	}
	section.s01 .item-list .item {
		max-width: 280px;
		width: 100%;
		margin: 0 auto 20px;
	}

	.top-bnr .inner{
		position:relative;
		height:12vw;
	}
	.top-bnr .inner .text-wrap{
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-pack:flex-start;
		-webkit-justify-content:flex-start;
		justify-content:flex-start;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-align-items:center;
		-ms-flex-align:center;
		align-items:center;
		position:absolute;
		left:3%;
		bottom:0;
	}
	.top-bnr .inner .text-wrap img{
		width:90vw;
		margin-right:0;
	}
	.top-bnr .inner .text-wrap .btn{
		margin-top:3.4em;
		display:block;
		color:#3083a3;
		background:#fff;
		border-radius:4px;
		padding:.6em 1em;
		font-size:2.667vw;
		width:7em;
		position:absolute;
		bottom:1.4em;
		left:74%;
	}
	section.banner li img{
		border-radius:10px;
	}
	section.banner .border{
		box-sizing:border-box;
		border:1px solid #ddd;
	}
	section.s01{
		margin-top:2em;
		margin-bottom:2em;
	}
	section.s01 h2{
		font-size: 1.4rem;
		text-align: center;
		line-height: 1.4;
		margin: 0 auto 2em;
		max-width: 60vw;
	}
	section.s01 .wrapper{
		width:94%;
		margin:0 auto;
	}
	section.s01 .item-list{
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-pack:justify;
		-webkit-justify-content:space-between;
		justify-content:space-between;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	section.s01 .item-list .item{
		border-radius:10px;
		background:#f4f5f7;
		overflow:hidden;
		transform:translate(0,20px);
		opacity:0;
		margin-bottom:1em;
	}
	section.s01 .item-list .item.elem1.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:0;
	}
	section.s01 .item-list .item.elem2.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:.1s;
	}
	section.s01 .item-list .item.elem3.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:.2s;
	}
	section.s01 .item-list .item.elem4.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:.3s;
	}
	section.s01 .item-list .item.elem5.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:.4s;
	}
	section.s01 .item-list .item.elem6.show{
		transform:translate(0,0);
		opacity:1;
		transition-property:opacity,transform;
		transition-duration:.5s;
		transition-timing-function:ease-out;
		transition-delay:.5s;
	}
	section.s01 .item-list .item img{
		width:100%;
		overflow:hidden;
	}
	section.s01 .item-list .item .text{
		box-sizing:border-box;
		padding:1em 1em 2em;
	}
	section.s01 .item-list .item .text .ttl{
		font-size:1.2rem;
		font-weight:700;
		margin-bottom:1em;
		text-align:center;
	}
	section.s01 .item-list .item .text .body{
		font-size:1rem;
		line-height:1.4;
		font-weight: normal;
	}
	section.s01 .shade{
		margin-top:.75em;
		text-align:center;
		width:100%;
	}
	section.feature{
		margin-bottom:2em;
	}
	section.feature .box{
		box-sizing:border-box;
		width:96%;
		margin:0 auto;
		border-radius:20px;
		margin-bottom:1em;
		overflow:hidden;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-pack:justify;
		-webkit-justify-content:space-between;
		justify-content:space-between;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-flex-direction:column;
		flex-direction:column;
		opacity:1!important;
	}
	section.feature .box.full{
		display:block;
		text-align:center;
	}
	section.feature .box .inner{
		box-sizing:border-box;
		padding:1.5em 1em;
		width:100%;
		order:2;
	}
	section.feature .box .movie{
		box-sizing:border-box;
		width:100%;
		overflow:hidden;
		border-radius:20px;
		order:1;
	}
	section.feature .box.full .inner{
		width:100%;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-flex-direction:column;
		flex-direction:column;
		padding:0;
	}
	section.feature .box.full .inner .ttl{
		text-align:left;
		order:2;
		padding:1.5rem 1rem 0;
	}
	section.feature .box.full .inner .body{
		order:3;
		padding:0 1rem;
	}
	section.feature .box.full .inner .icons{
		order:4;
		padding:0 1rem 1.5rem;
	}
	section.feature .box.full .movie{
		width:100%;
		margin:0 auto;
		order:1;
	}
	section.feature .box.slide .inner{
		width:100%;
	}
	section.feature .box .movie video{
		width:100%;
		opacity:0;
		border-radius:20px;
	}
	section.feature .box.left .inner{
		order:2;
		padding-right:1em;
	}
	section.feature .box.left .movie{
		order:2;
	}
	section.feature .box.right .inner{
		order:1;
		padding-left:1em;
	}
	section.feature .box.right .movie{
		order:2;
	}
	section.feature .box.left .img-content {
		order: 1;
	}
	section.feature .box .inner .ttl{
		font-size:6.4vw;
		font-weight:700;
		transform:translate(0,20px);
		opacity:0;
	}
	section.feature .box .inner .body{
		font-size:1rem;
		line-height:1.7;
		margin-top:1.6em;
		transform:translate(0,20px);
		opacity:0;
	}
	section.feature .box.full .inner .body{
		text-align:left;
	}
	section.feature .box .icons{
		margin-top:2em;
		overflow:hidden;
		width:100%;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-pack:flex-start;
		-webkit-justify-content:flex-start;
		justify-content:flex-start;
		-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-webkit-align-items:center;
		-ms-flex-align:center;
		align-items:center;
		transform:translate(0,20px);
		opacity:0;
	}
	section.feature .box.full .icons{
		width:90%;
		margin:0 auto;
		-ms-flex-pack:center;
		-webkit-justify-content:center;
		justify-content:center;
	}
	section.feature .box .icons li{
		box-sizing:border-box;
		text-align:center;
		width:50%;
		padding:1em 1em;
		border-right:none;
		margin-bottom:1em;
	}
	section.feature .box .icons li:nth-of-type(1),section.feature .box .icons li:nth-of-type(3),section.feature .box .icons li:nth-of-type(5){
		border-right:1px solid #c5c5c5;
	}
	section.feature .box .icons li .wrap{
		height:16vw;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-pack:center;
		-webkit-justify-content:center;
		justify-content:center;
		-webkit-align-items:center;
		-ms-flex-align:center;
		align-items:center;
	}
	section.feature .box .icons li img{
		width:14.667vw;
	}
	section.feature .box .icons li:first-child{
		border-left:none;
	}
	section.feature .box .icons li p{
		margin-top:1.4em;
		font-size:3vw;
		line-height:1.4;
	}
	section.feature .box.slide{
		display:block;
	}
	section.feature .box.slide .inner{
		position:absolute;
		bottom:0;
		left:0;
		z-index:11;
		padding-left:0;
	}
	section.feature .box.slide .icons-wrap{
		width:96%;
		margin:0 auto 2%;
	}
	section.feature .box.slide .inner .ttl{
		color:#fff;
		padding-left:1rem;
		font-size:5.33vw;
	}
	section.feature .box.slide .inner .body{
		color:#fff;
		padding-left:1rem;
		font-size:3.4667vw;
		font-weight:700;
	}
	section.feature .box.slide .icons{
		width:100%;
		background:#fff;
		border-radius:14px;
		flex-wrap:wrap;
		margin-top:1em;
		padding-top:1em;
		margin-bottom:2%;
	}
	section.feature .box.slide .icons li{
		width:50%;
	}
	section.feature .box.slide .icons li img{
		width:14.667vw;
	}
	section.feature .box.slide .icons li p{
		font-size:3vw;
	}
	section.feature .box.slide .icons.wide{
		width:750px;
	}
	section.feature .box.slide .icons li:first-child{
		border-left:none;
	}
	section.feature .box.slide .icons li:last-child{
		border-right:none;
	}
	section.feature .box.slide .bg-image{
		z-index:10;
		opacity:0;
		width:100%;
		height:31.33vw;
		background-position:center center;
		background-repeat:no-repeat;
		background-size:cover;
		position:absolute;
		left:0;
		top:0;
		-webkit-animation:anime 15s 0s infinite;
		animation:anime 15s 0s infinite;
	}

	section.feature .box.box-cont1.box-cont-sp1 {
		padding-top: 20px;
	}
	.slick-initialized .slick-slide {
		margin: 10px 20px 30px;
	}
	.main_imgBox{
		height:184.2667vw;
		width:100%;
		border-radius:20px;
		overflow:hidden;
		position:relative;
	}
	.main_img{
		z-index:10;
		opacity:0;
		width:100%;
		height:184.2667vw;
		background-position:center center;
		background-repeat:no-repeat;
		background-size:cover;
		position:absolute;
		left:0;
		top:0;
		-webkit-animation:anime 34s 0s infinite;
		animation:anime 34s 0s infinite;
		transform:scale(1.1);
	}
	.main_img:after{
		content:"";
		background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,0) 20%,rgba(0,0,0,.5) 60%,rgba(0,0,0,.5) 100%);
		position:absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		z-index:1;
	}
	.main_img:nth-of-type(2),.main_img:nth-of-type(7){
		-webkit-animation-delay:6s;
		animation-delay:6s;
	}
	.main_img:nth-of-type(3),.main_img:nth-of-type(8){
		-webkit-animation-delay:12s;
		animation-delay:12s;
	}
	.main_img:nth-of-type(4),.main_img:nth-of-type(9){
		-webkit-animation-delay:18s;
		animation-delay:18s;
	}
	.main_img:nth-of-type(10),.main_img:nth-of-type(5){
		-webkit-animation-delay:24s;
		animation-delay:24s;
	}

	@keyframes anime{
			0%{
			opacity:0;
			border-radius:20px;
		}
		6.25%{
			opacity:1;
		}
		37.5%{
			opacity:1;
		}
		43.75%{
			opacity:0;
			transform:scale(1);
			z-index:9;
		}
		100%{
			opacity:0;
		}
	}
	section.feature .box.show .inner .ttl.elem1{
		font-size: 1.5rem;
		opacity:1;
		order: 1;
		transform:translate(0,0);
		transition:opacity .5s ease-out 0,transform .5s ease-out 0;
	}
	section.feature .box.show .inner .body.elem2{
		opacity:1;
		order: 2;
		transform:translate(0,0);
		transition:opacity .5s ease-out .2s,transform .5s ease-out .2s;
	}
	section.feature .box.box-cont2 .body.elem2 { max-width: 100%; }
	section.feature .box.full .img-content {
		order: 3;
	}
	section.feature .box.show .icons.elem3{
		opacity:1;
		transform:translate(0,0);
		transition:opacity .5s ease-out .4s,transform .5s ease-out .4s;
	}
	section.feature .box.show .movie video.elem4{
		opacity:1;
		transition:opacity .6s ease-out .6s;
	}
	.title-block{
		text-align:center;
	}
	.title-block .ttl{
		font-size:1.2rem;
		margin-bottom:.6em;
	}
	.title-block .body{
		font-size:1rem;
		line-height:1.4;
	}

	section.feature .box.right.fadein.box-cont.box-cont4.box-cont-sp4.show .inner {
		order: 2;
	}
	section.feature .box.right.fadein.box-cont.box-cont6.box-cont-sp6.show .inner {
		order: 2;
	}
	section .img-content figure img {
		width: 50vw;
	}
	.box.full.fadein.box-cont.box-cont2.box-cont-sp2.show .ttl.elem1 {
		text-align: center;
	}
	section.feature .box.left.box-cont3 .img-content figure img {
		width: 50vw;
		margin-bottom: 30px;
	}
	section.feature .box.box-cont4.box-cont-sp4 .img-content {
		margin: 0;
		width: 100%;
	}
	section.feature .box.box-cont4.box-cont-sp4 .img-content figure {
		justify-content: center;
	}
	section.feature .box.box-cont5.box-cont-sp5 .img-content {
		width: 100%;
		position: relative;
		border-radius: 0;
	}
	section.feature .box.box-cont5.box-cont-sp5 .inner {
		padding: 30px 20px;
		width: 100%;
	}

	section.support .title-block .ttl {
		font-size: 1.2rem;
	}
	section.support .support-list ul {
		width: 100%;
		align-items: stretch;
		gap: 10px;
	}
	section.support .support-list ul li {
		width: calc(50% - 18px);
		margin: 0;
	}

	section.price .title-block .ttl {
		font-size: 1.2rem;
	}
	section.price .price-list .table {
		overflow-y: hidden;
		position: relative;
		max-width: calc(100vw - 40px);
		overflow-x: scroll;
	}
	section.price .price-list .table ul.tbl-1 {
		max-width: 800px;
	}
	section.price .price-list .table ul.tbl-1 li ul.tbl-2 li {
		padding: 15px 5px;
		font-size: 0.9rem;
		width: calc(100% - 10px);
	}
	section.price .price-list .table ul.tbl-1 li ul.tbl-2.first-th li {
		padding: 10px;
		font-size: 0.9rem;
	}
	section.price .price-list .table ul.tbl-1 li ul.tbl-2 li.th-block.blue-block {
		padding: 20px 5px;
		font-size: 0.9rem;
	}
	section.price .price-list .table ul.tbl-1 > li:first-child {
		width: 45em;
	}
	section.price .price-list .table ul.tbl-1 li ul.tbl-2.first-th li {
		margin: 8px 0;
		width: calc(100% - 20px);
	}
	section.price .price-list .price-area .price-block {
		width: 100%;
		position: relative;
		order: 2;
	}
	section.price .price-list .price-area .price-block.main-price {
		order: 1;
	}
	section.price .price-list .table table {
	    min-width: 920px;
	}
	.price-list table.price-table-block tr.table-header th:nth-child(2) img {
		height: 30px;
	}
	.price-list table.price-table-block tr th {
		padding: 10px 0.4em;
	    min-width: 180px;
	}
	.price-list table.price-table-block tr th:first-child {
		min-width: 90px;
	}



	section.case .case-list > ul > il {
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 20px;
	}
	section.case .case-list ul {
		gap: 5px;
	}
	section.case .case-list ul.app-lists {
		width: calc(100%);
		bottom: 0;
		position: relative;
		margin: 20px 0 0;
		left: 0;
		transform: translate(0);
	}
	section.case .case-list ul.app-lists li {
		border: 1px solid #D0DDFD;
		padding: 30px 10px 20px;
		border-radius: 12px;
		width: calc(50% - 37px);
		text-align: center;
	}
	section.case .case-list ul.app-lists li p {
		font-size: 0.9rem;
	}
	section.case .case-list ul.app-lists picture > * {
		margin-bottom: 20px;
	}

	section.technology .technology_lists .tech_item {
		width: 100%;
	}
	section.technology .technology_lists .tech_item.tech_item_04 {
		width: 100%;
	}
	section.technology .technology_lists .tech_item.tech_item_04 ul.google-cloud-platform li {
		width: 100%;
	}

	section.technology .technology_lists {
		padding: 40px 20px 20px;
		gap: 20px;
	}
	section.technology .technology_lists .tech_item.tech_item_01 {
		display: block;
		padding: 0px;
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_06.fadein-item.show-block {
		display: block;
		width: 100%;
		margin-bottom: 20px;
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_06.fadein-item.show-block .fadein-item.show-block {
		margin-bottom: 20px;
		width: calc(100% - 42px);
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item {
		padding: 70px 20px 20px;
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_05 {
		width: calc(100% - 42px);
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_04 {
		width: calc(100% - 40px);
	}
	section.technology .technology_lists .tech_item.tech_item_04 ul.google-cloud-platform {

	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_04 li.first-cont {
		width: 100%;
		padding: 0 0 20px;
		display: block;
	}
	section.technology .technology_lists .tech_item.tech_item_07 .tech_item.tech_item_04 li.first-cont p {
		padding: 0;
	}

	section.technology .technology_lists .tech_item h3 {
		padding: 10px;
		width: calc(100% - 20px);
		font-size: 1.125rem;
	}
	section.technology .technology_lists .tech_item figure>* {
		height: 100px;
	}
	section.technology .technology_lists .tech_item h4 {
		font-size: 1.5rem;
	}
	section.technology .technology_lists .tech_item:hover > p {
		height: calc(100% - 118px);
		padding: 20px;
	}

	section.inquiry .box-cont {
		flex-wrap: wrap;
	}
	section.inquiry .box-cont .inner {
		width: 100%;
	}
	input, select, textarea {
		width: calc(100% - 34px);
	}

	section.contact {
		padding: 60px 20px;
	}
	section.contact .box.left.box-cont {
		flex-wrap: wrap;
	}
	section.contact .box.left.box-cont .inner {
		width: 100%;
	}
	section.contact .box.left.box-cont .inner .ttl.elem1 {
		font-size: 1.5rem;
	}
	section.contact .box.left.box-cont .img-content {
		width: 100%;
	}
	section.contact .box.left.box-cont .img-content figure,
	section.inquiry .box-cont .inner.inner02 .submit-box {
		justify-content: center;
	}


}
