@charset "UTF-8";

/*----------------------------------------------------
	COMMON / PC / TABLET / SP
----------------------------------------------------*/

/* [body] ------------------ */

html {
	font-size: 62.5%;
}

body {
	margin: 0;
	padding: 0;
	color: #000;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
	-webkit-text-size-adjust: 100%;
	font-size: 1.5rem;
	overflow: visible;
	height: auto;
}

/* [common] ------------------ */

#container {
	position: relative;
	padding-top: 66px;
}

.main {
	position: relative;
}

.sp,
.sp-br,
.contact-footer {
	display: block;
}

.pc-nav,
.pc-br {
	display: none;
}

.blank {
	display: block;
}

/* [btn / blue-btn | download-link] ------------------ */

.blue-btn {
	padding: 0 0 1px;
}

.blue-btn a,
.download-link {
	display: block;
	position: relative;
	width: 100%;
	min-width: 250px;
	height: 40px;
	margin: 0 auto;
	color: #fff;
	overflow: hidden;
	outline: 1px solid #6485c1;
	background-color: #6485c1;
	box-sizing: border-box;
}

.blue-btn a:hover,
.download-link a:hover {
	color: #6485c1;
}

.blue-btn a:before,
.download-link a:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: -1px;
	color: #6485c1;
	background-color: #fff;
	transform: translateX(-100%);
	transition: all .3s;
	z-index: 2;
}

.blue-btn a:hover::before,
.download-link a:hover::before {
	transform: translateX(0);
}

.btn-icon {
	display: block;
	position: relative;
	height: 40px;
	margin: 0 auto;
	text-align: center;
	line-height: 40px;
	z-index: 3;
}

.blue-btn a:hover,
.download-link a:hover {
	color: #6485c1;
}

.blue-btn a:hover .btn-icon:after,
.download-link a:hover .btn-icon:after {
	color: #6485c1;
	background-color: #fff;
}

.btn-icon::after,
.btn-icon::before {
	display: block;
	content: '';
	position: absolute;
}

.btn-icon::before,
.btn-icon::after {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.ie11 .blue-btn a {
	padding-top: 2px;
}

.ie11 .btn-icon::before,
.ie11 .btn-icon::after {
	top: -4px;
}

.btn-icon::before {
	right: 17px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.blue-btn a:hover .btn-icon::before,
.download-link a:hover .btn-icon::before {
	right: 17px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #6485c1;
	border-right: 1px solid #6485c1;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* [navigation hamburger / sp-nav] ------------------ */

#overlay {
	-webkit-transition: background 0.4s ease-out;
	transition: background 0.4s ease-out;
}

.navMode #overlay {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 150%;
	z-index: 99;
	background: rgba(255, 255, 255, 0.7);
}

.navMode .sp-nav {
	height: 100vh;
	opacity: 1;
	background: rgba(255, 255, 255, 0.7);
	overflow-y: scroll;
}

.navMode .nav-table {
	width: 100%;
	height: 100vh;
	display: table;
}

.navMode .nav-table ul {
	display: table-cell;
	vertical-align: middle;
	padding-top: 40px;
}

.sp-nav {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	background: rgba(255, 255, 255, 0.7);
	z-index: 100;
	opacity: 0;
	-webkit-transition: opacity 0.4s ease-out;
	transition: opacity 0.4s ease-out;
}

.sp-nav .menu {
	margin: 100px 60px 60px 60px;
	text-align: center;
}

/* [sp-nav / menu-btn] ------------------ */

#menu-btn {
	position: fixed;
	display: block;
	color: #6485c1;
	text-align: center;
	width: 25px;
	height: 67px;
	top: 0;
	right: 3.125%;
	z-index: 10;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	z-index: 101;
	cursor: pointer;
}

#menu-btn {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

#menu-btn:hover .sign span {
	background: #6485c1;
}

.sign {
	position: relative;
	top: 4px;
	width: 25px;
	height: 22px;
}

.sign,
.sign span {
	display: inline-block;
	-webkit-transition: all .4s;
	transition: all .4s;
}

.sign span {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 25px;
	height: 3px;
	background: #6485c1;
}

.sign span:nth-of-type(1) {
	margin-top: 1px;
}

.sign span:nth-of-type(2) {
	margin-top: 10px;
}

.sign span:nth-of-type(3) {
	margin-top: 19px;
}

.sign.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) scale(0);
	transform: translateY(8px) scale(0);
}

.sign.active span:nth-of-type(2) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.sign.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) scale(0);
	transform: translateY(-8px) scale(0);
}

.sign.active span:nth-of-type(2)::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.sign span:nth-of-type(2)::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 3px;
	background-color: #6485c1;
	border-radius: 4px;
	-webkit-transition: all .4s;
	transition: all .4s;
}

#menu-btn:hover .sign span:nth-of-type(2)::after {
	background: #6485c1;
}

.navMode #menu-btn:hover .sign span,
.navMode .sign span,
.navMode .sign span:nth-of-type(2)::after,
.navMode #menu-btn:hover .sign span:nth-of-type(2)::after {
	background-color: #6485c1;
}

/* [sp-nav] ------------------ */

.sp-nav li {
	text-align: center;
	margin-bottom: 30px;
}

.sp-nav li.overseas {
	margin-bottom: 40px;
}

.sp-nav li.case.sub {
	margin-bottom: 15px;
}

.english .sp-nav li {
	margin-bottom: 10px;
}

.english .sp-nav li.datacenter,
.english .sp-nav li.cloud,
.english .sp-nav li.global {
	margin-bottom: 30px;
}

.sp-nav a {
	width: 220px;
	display: block;
	color: #000;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0 auto;
	padding: 10px;
}

.sp-nav a:hover {
	color: #6485c1;
	text-decoration: underline;
}

.sp-nav img {
	display: block;
	width: 200px;
	height: auto;
	margin: 0 auto 8px;
}

.english .sp-nav .contact a {
	padding: 15px 0;
}

.english .sp-nav img {
	margin: 0 auto;
}

.english .sp-nav .contact a {
	width: 100%;
}

.english .sp-nav .contact img {
	width: 80%;
	max-width: 350px;
}

.sp-nav li.japanese.sub,
.sp-nav li.english.sub {
	margin-bottom: 60px;
}

.sp-nav li.case.sub a,
.sp-nav li.japanese.sub a,
.sp-nav li.english.sub a {
	font-size: 1.5rem;
	font-weight: normal;
}

.sp-nav li.contact a {
	width: 100%;
	height: auto;
	color: #fff;
	font-size: 1.5rem;
	background: #e60012;
}

.sp-nav li.case.sub a::before,
.sp-nav li.japanese.sub a::before,
.sp-nav li.english.sub a::before {
	left: 65px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #6485c1;
	border-right: 1px solid #6485c1;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.sp-nav li.case.sub a,
.sp-nav li.japanese.sub a,
.sp-nav li.english.sub a {
	position: relative;
	display: block;
}

.english .sp-nav li.case.sub,
.english .sp-nav li.japanese.sub {
	text-align: left;
}

.english .sp-nav li.case.sub a,
.english .sp-nav li.japanese.sub a {
	width: 110px;
	white-space: nowrap;
}

.english .sp-nav li.case.sub a span,
.english .sp-nav li.japanese.sub a span {
	margin-left: 5px;
}

.english .sp-nav li.case.sub a::before,
.english .sp-nav li.japanese.sub a::before {
	left: 0;
}

.sp-nav li.case.sub a::before,
.sp-nav li.case.sub a::after,
.sp-nav li.japanese.sub a::before,
.sp-nav li.japanese.sub a::after,
.sp-nav li.english.sub a::before,
.sp-nav li.english.sub a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.ie11 .sp-nav li.case.sub a::before,
.ie11 .sp-nav li.case.sub a::after,
.ie11 .sp-nav li.japanese.sub a::before,
.ie11 .sp-nav li.japanese.sub a::after,
.ie11 .sp-nav li.english.sub a::before,
.ie11 .sp-nav li.english.sub a::after {
	top: -3px;
}

/* Add nav AWS OpenCanvas */

.sp-nav ul.ul-child {
	width: 195px;
	margin: 5px auto 0;
	white-space: nowrap;
}

.sp-nav ul.ul-child li {
	margin-bottom: 0;
	text-align: left;
}

.sp-nav ul.ul-child a {
	position: relative;
	display: inline-block;
	width: auto;
	font-size: 1.5rem;
	font-weight: normal;
	margin-bottom: 5px;
	padding: 10px 10px 10px 15px;
}

.navMode .nav-table ul.ul-child {
	display: block;
	padding: 0;
}

.navMode .nav-table ul.ul-child a:before {
	position: absolute;
	top: 13px;
	left: 0;
	width: 7px;
	height: 7px;
	content: '';
	border-top: 1px solid #6485c1;
	border-right: 1px solid #6485c1;
	transform: rotate(45deg);
	vertical-align: top;
}

.navMode .nav-table ul.ul-child .external-link {
	display: inline-block;
	position: absolute;
	top: 10px;
	right: -10px;
	width: 13px;
	height: 14px;
	margin-top: 0;
	background-size: 13px 14px;
	background-repeat: no-repeat;
	background-image: url(../images/common/external_link_off.png);
}

.navMode .nav-table ul.ul-child a:hover .external-link {
	background-image: url(../images/common/external_link_on.png);
}

.r-text {
	font-family: monospace;
	font-size: 1.5rem;
}


/* [section] ------------------ */

.section-inner {
	padding: 0 3.125%;
}

.sec-title {
	color: #6485c1;
	font-size: 2.0rem;
	font-weight: bold;
	padding: 65px 0 35px;
	text-align: center;
	line-height: 1.4;
}

.sec-text {
	font-size: 1.5rem;
	margin: 0 auto 70px;
	text-align: center;
	line-height: 2.0;
}

.sec-text2 {
	font-size: 1.5rem;
	margin: 0 auto 70px;
	text-align: center;
	line-height: 2.0;
}

.sec-sub-title {
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}

.inner-list {
	font-size: 1.5rem;
	text-align: left;
	line-height: 1.6;
}

.inner-list li {
	position: relative;
	padding-left: .8em;
}

.inner-list li:before {
	position: absolute;
	top: -4px;
	left: 1px;
	content: "• ";
	color: #6485c1;
	font-size: 2.0rem;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.img-wrap img,
.figure-wrap img {
	width: 100%;
	height: auto;
}

/* [col-style] ------------------ */

.col-style-1,
.col-style-2,
.col-style-3,
.col-style-4 {
	text-align: center;
}

.col-style-1 .text,
.col-style-2 .text {
	font-size: 1.5rem;
	margin: 0 auto;
	line-height: 1.8;
}

/* [col-style-1] ------------------ */

.col-style-1 {
	overflow: hidden;
}

.col-style-1 li {
	position: relative;
	margin: 103px 0 210px;
	padding: 0 10px;
	border: 2px solid #6485c1;
	transition: .3s;
	z-index: 2;
}

.home .col-style-1 li {
	padding: 0 10px 90px;
}

.col-style-1 li .thumb {
	display: block;
	width: 206px;
	height: 206px;
	margin: -103px auto 25px;
}

.english .col-style-1 li .thumb {
	margin: -92px auto 41px;
}

.col-style-1 .blue-img {
	display: block;
	width: 206px;
	margin: 0 auto 10px;
}

.col-style-1 .ttl {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 35px;
}

.col-style-1 .text {
	line-height: 1.8;
	text-align: center;
}

.col-style-1 .btn-solution {
	position: absolute;
	left: 50%;
	bottom: -30px;
	margin-left: -92px;
}

.btn-solution a {
	position: relative;
	width: 185px;
	height: 70px;
	overflow: hidden;
	outline: 1px solid #6485c1;
	background-color: #6485c1;
}

.btn-solution a:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #fff;
	transform: translateX(-100%);
	transition: all .3s;
}

.btn-solution a:hover::before,
.col2-btn-solution a:hover::before {
	transform: translateX(0);
}

.btn-solution a:hover .w-arrow:before,
.col2-btn-solution a:hover .w-arrow:before {
	background-color: #6485c1;
}

.btn-solution a:hover .w-arrow:after,
.col2-btn-solution a:hover .w-arrow:after {
	border-right: 1px solid #6485c1;
	border-bottom: 1px solid #6485c1;
}

.w-arrow {
	display: block;
	position: relative;
}

.arrow-wrap a {
	display: block;
	width: 185px;
	height: 60px;
}

.w-arrow::after,
.w-arrow::before {
	display: block;
	content: '';
	position: absolute;
}

.w-arrow::after {
	top: 50%;
	left: 50%;
	width: 25px;
	height: 25px;
	margin-top: 18px;
	margin-left: -4px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.w-arrow::before {
	top: 50%;
	left: 50%;
	width: 45px;
	height: 1px;
	margin-left: -20px;
	margin-top: 30px;
	background-color: #fff;
}

.solution-list a,
.feature-list a {
	color: #000;
}

/* [col-style-2] ------------------ */

.col-style-2 .ttl {
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 1.4;
}

.col-style-2 li {
	position: relative;
	padding: 0;
	margin-bottom: 65px;
	border: 2px solid #bfbfbf;
}

.col-style-2 li a {
	display: block;
	padding: 36px 0 70px;
}

.thumb-2,
.point_img {
	display: block;
	max-width: 150px;
	margin: 0 auto;
}

.point_img {
	padding: 35px 0 15px;
}

/* [col-style-3] ------------------ */

.col-style-3 .blue-text {
	color: #6485c1;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 40px 0 28px;
	line-height: 1.2;
}

.col-style-3>li {
	margin-bottom: 68px;
}

/* [col-style-4] ------------------ */

.col-style-4 .blue-text {
	color: #6485c1;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 40px 0 28px;
	line-height: 1.2;
}

.col-style-4>li {
	margin-bottom: 68px;
}

/* [box-style-1] ------------------ */

.box-style-1 {
	text-align: center;
}

.box-style-1 .left {
	margin-bottom: 66px;
}

.box-style-1 .left,
.box-style-1 .right {
	padding: 60px 10px 60px;
	border: 2px solid #6485c1;
}

.box-style-1 .en-title {
	color: #6485c1;
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 30px;
}

.box-style-1 .ja-title {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 32px;
}

/* [box-style-2] ------------------ */

.box-style-2 .blue-title {
	color: #6485c1;
	font-size: 1.6rem;
	margin-bottom: 15px;
	line-height: 1.6;
}

.box-style-2 .text {
	line-height: 1.6;
}

/* [ movie / mitaka-data-center] ------------------ */

.mitaka-data-center {
	width: 100%;
	padding-bottom: 65px;
	background: url(../images/common/movie_bg_sp.jpg) center top no-repeat;
	background-size: cover;
}

.mitaka-data-center .left {
	padding: 65px 0;
}

.movie-img {
	width: 100%;
	height: auto;
}

.movie-title {
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: 20px;
}

.open-text {
	display: inline-block;
	color: #e60012;
	font-size: 1.5rem;
	padding: 5px 8px;
	margin-bottom: 20px;
	border: 1px solid #e60012;
}

.ie11 .open-text {
	padding: 8px 8px 3px;
}

.mitaka-data-center .text {
	margin-bottom: 70px;
	line-height: 1.8;
}

/* [checkbox] ------------------ */

.input-text {
	display: inline-block;
	position: relative;
	top: 13px;
	font-weight: bold;
}

.input-text span {
	border-bottom: 1px solid #6485c1;
}

.input-text span a {
	color: #6485c1;
}

.check {
	display: inline-block;
	padding-top: 20px;
}

input[type=checkbox] {
	display: none;
}

.check {
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	padding: 0 0 0 70px;
	vertical-align: middle;
	cursor: pointer;
}

.check:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 15px;
	display: block;
	margin-top: -10px;
	width: 40px;
	height: 40px;
	border: 2px solid #ccc;
	content: '';
}

.check:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 33px;
	display: block;
	margin-top: 0px;
	width: 8px;
	height: 15px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

input[type=checkbox]:checked+.check:before {
	opacity: 1;
}

/* [footer] ------------------ */

#footer {
	color: #fff;
	background: #000;
}

.footer-inner {
	font-size: 1.2rem;
	padding: 20px 0 85px;
	text-align: center;
}

#footer a {
	display: block;
	color: #fff;
}

#footer .footer-left a {
	display: inline-block;
	padding: 0 0 15px;
	margin-bottom: 0;
}

#footer .footer-left a:hover {
	text-decoration: underline;
}

.footer-right img {
	width: 100%;
	height: auto;
}

.footer-right a {
	width: 171px;
	height: auto;
	margin: 40px auto 0;
}

.copyright {
	display: block;
	font-size: 1.2rem;
	margin-bottom: 15px;
}

.copyright-aws {
	display: block;
	font-size: 1.0rem;
	margin-bottom: 0;
	line-height: 1.4;
}

.page-top-btn-wrap {
	height: 65px;
}

.page-top-btn {
	position: fixed;
	right: 3.125%;
	bottom: 65px;
	display: block;
	width: 45px;
	height: 45px;
	background: url(../images/common/btn_page_top.png) no-repeat 0 0;
	background-size: 45px 45px;
	z-index: 2;
}

.scrollStart .page-top-btn {
	position: fixed;
	right: 3.125%;
	bottom: 65px;
}

.scrollEnd .page-top-btn {
	position: absolute;
	bottom: 15px;
}

.contact-footer {
	width: 100%;
	position: fixed;
	bottom: 0;
	text-align: center;
	z-index: 3;
}

.contact-footer a {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 1.5rem;
	padding: 10px;
	background: #e60012;
}

.english .contact-footer a {
	padding: 20px 0 18px;
}

.contact-footer img {
	display: block;
	width: 200px;
	height: auto;
	margin: 0 auto 8px;
}

.english .contact-footer img {
	width: 90%;
	max-width: 400px;
	height: auto;
	margin: 0 auto;
}

.contact .contact-footer,
.confirm .contact-footer,
.done .contact-footer {
	display: none !important;
}

.contact .footer-inner,
.confirm .footer-inner,
.done .footer-inner {
	padding: 20px 0 35px;
}

.contact .page-top-btn,
.confirm .page-top-btn,
.done .page-top-btn {
	right: 3.125%;
	bottom: 15px;
}

.scrollStart .contact .page-top-btn,
.scrollStart .confirm .page-top-btn,
.scrollStart .done .page-top-btn {
	right: 3.125%;
	bottom: 15px;
}

/*----------------------------------------------------
	TOP / TABLET / PC
----------------------------------------------------*/

@media screen and (min-width: 768px) {

	/* /////[ Common ] ////////////////////////////////// */

	.sp,
	.sp-br {
		display: none;
	}

	.contact-footer {
		display: none !important;
	}

	.pc-br {
		display: block;
	}

	.blank {
		display: none;
	}

	/* [section] ------------------ */

	.section-inner {
		width: 1240px;
		min-width: 1240px;
		margin: 0 auto;
		padding: 0 20px;
	}

	.sec-title {
		font-size: 4.0rem;
	}

	.sec-text {
		max-width: 1000px;
		font-size: 1.8rem;
		margin: 0 auto 120px;
		line-height: 1.8;
	}

	.sec-text2 {
		max-width: 1000px;
		font-size: 1.8rem;
		margin: 0 auto 120px;
		line-height: 1.8;
	}

	.sec-sub-title {
		font-size: 3.0rem;
	}

	.inner-list {
		font-size: 1.8rem;
	}

	.inner-list li:before {
		left: 1px;
		font-size: 2.5rem;
	}

	/* [checkbox] ------------------ */

	.check:hover:after {
		border-color: #000;
	}

	/* [col-style] ------------------ */

	.col-style-1,
	.col-style-2,
	.col-style-3,
	.col-style-4 {
		display: flex;
		text-align: center;
	}

	.col-style-1>li:nth-child(1),
	.col-style-1>li:nth-child(2),
	.col-style-2>li:nth-child(1),
	.col-style-2>li:nth-child(2),
	.col-style-3>li:nth-child(1),
	.col-style-3>li:nth-child(2) {
		width: 30%;
		margin-right: 5%;
	}

	.col-style-1>li:nth-child(3),
	.col-style-2>li:nth-child(3),
	.col-style-3>li:nth-child(3) {
		width: 30%;
	}

	.col-style-4>li {
		margin-left: 1.75%;
		width: 25%;
	}

	.col-style-4>li:first-child {
		margin-left: 0;
	}

	.col-style-1 .btn-solution {
		bottom: -35px;
	}

	/* [col-style-2] ------------------ */

	.arrow-wrap a {
		height: 70px;
	}

	.w-arrow::after {
		margin-top: 23px;
	}

	.w-arrow::before {
		margin-top: 35px;
	}

	/* [col-style-2] ------------------ */

	.col-style-2 .ttl {
		font-size: 2.4rem;
		margin-bottom: 12px;
	}

	.col-style-2 li {
		margin-bottom: 0;
		padding: 0;
		border: 1px solid #bfbfbf;
	}

	.point_img {
		padding: 26px 0 22px;
	}

	/* [col-style-3] ------------------ */

	.col-style-3 .blue-text {
		font-size: 2.4rem;
		padding: 45px 0 30px;
	}

	.col-style-3>li {
		margin-bottom: 0;
	}

	/* [col-style-4] ------------------ */

	.col-style-4 .blue-text {
		font-size: 2.4rem;
		padding: 45px 0 30px;
		text-align: left;
	}

	.col-style-4>li {
		margin-bottom: 0;
	}

	/* [box-style-1] ------------------ */

	.box-style-1 {
		-webkit-display: flex;
		display: flex;
	}

	.box-style-1 .left,
	.box-style-1 .right {
		width: 47.5%;
		padding: 40px 10px;
	}

	.box-style-1 .left {
		margin-right: 5%;
		margin-bottom: 0;
	}

	.box-style-1 .en-title {
		font-size: 2.5rem;
		margin-bottom: 35px;
	}

	.box-style-1 .ja-title {
		font-size: 1.8rem;
		margin-bottom: 40px;
	}

	.box-style-1 .inner-list {
		max-width: 430px;
		margin: 0 auto;
	}

	/* [box-style-2] ------------------ */

	.box-style-2 {
		overflow: hidden;
	}

	.box-style-2 .left,
	.box-style-2 .right {
		width: calc((100% - 65px) / 2);
	}

	.box-style-2 .blue-title {
		font-size: 1.8rem;
		margin-bottom: 15px;
	}

	.box-style-2 .text {
		font-size: 1.5rem;
		line-height: 1.8;
	}

	/* [ movie / mitaka-data-center] ------------------ */

	.mitaka-data-center {
		height: 370px;
		margin: 307px auto 0;
		background: url(../images/common/movie_bg_pc.jpg) center 50px no-repeat;
		background-size: cover;
	}

	.mitaka-data-center .section-inner {
		overflow: hidden;
	}

	.mitaka-data-center .left {
		width: 47.5%;
		padding: 0;
	}

	.mitaka-data-center .left img {
		width: 100%;
	}

	.mitaka-data-center .right {
		width: 52.5%;
	}

	.mitaka-data-center .text-wrap {
		position: relative;
		height: 370px;
		padding: 105px 0 0 50px;
	}

	.mitaka-data-center .movie-title {
		font-size: 3.0rem;
		margin-bottom: 15px;
	}

	.mitaka-data-center .blue-btn {
		position: absolute;
		right: 0;
		bottom: 50px;
	}

	/* [footer] ------------------ */

	#footer {
		width: 100%;
		min-width: 1240px;
		min-height: 100px;
	}

	.footer-inner,
	.contact .footer-inner,
	.confirm .footer-inner,
	.done .footer-inner {
		width: 1240px;
		min-width: 1240px;
		margin: 0 auto;
		padding: 15px 20px 19px;
		text-align: left;
		overflow: hidden;
	}

	.left,
	.footer-left {
		float: left;
	}

	.right,
	.footer-right {
		float: right;
	}

	.footer-left a {
		margin-bottom: 7px;
		padding: 9px 0;
	}

	.copyright-aws {
		line-height: 1.0;
	}

	.footer-right a {
		width: 171px;
		height: auto;
		margin: 14px 0 0;
		padding: 10px 0;
	}

	/* effect */

	.col-style-1.solution-list li,
	.col-style-2.feature-list li {
		border: none;
	}

	.col-style-1.solution-list li:after,
	.col-style-2.feature-list li:after {
		display: block;
		content: "";
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		transition: .3s;
		box-sizing: border-box;
	}

	.col-style-1.solution-list li:hover::after {
		height: 100%;
		box-sizing: border-box;
		border-width: 4px;
	}

	.col-style-1.solution-list li:after {
		border: 2px solid #6485c1;
	}

	.col-style-2.feature-list li:hover::after {
		height: 100%;
		box-sizing: border-box;
		border-width: 3px;
	}

	.col-style-2.feature-list li:after {
		border: 1px solid #bfbfbf;
	}

}

/*----------------------------------------------------
	PC
----------------------------------------------------*/

@media screen and (min-width: 768px) {

	/* /////[ nav ] ////////////////////////////////// */

	.clone-sticky-header {
		position: fixed;
		width: 100%;
		height: 120px;
		top: 0;
		left: 0;
		background-color: #fff;
		z-index: 100;
		transform: translateY(-100%);
		transition: .3s;
	}

	.clone-sticky-header .inner {
		width: 1240px;
		margin: 0 auto;
		padding: 0 20px;
		overflow: hidden;
	}

	.page-top-btn {
		width: 60px;
		height: 60px;
		bottom: 15px;
		right: 15px;
		background-size: 60px 60px;
	}

	.contact .page-top-btn,
	.confirm .page-top-btn,
	.done .page-top-btn {
		bottom: 15px;
		right: 15px;
	}

	.clone-sticky-header.is-show {
		transform: translateY(0);
	}

	.page-top-btn-wrap {
		height: 75px;
	}

	.scrollStart .page-top-btn {
		right: 15px;
		bottom: 15px;
	}

	.scrollEnd .page-top-btn {
		right: 15px;
	}

	.scrollStart .contact .page-top-btn,
	.scrollStart .confirm .page-top-btn,
	.scrollStart .done .page-top-btn {
		right: 15px;
		bottom: 15px;
	}

}

@media screen and (min-width: 1241px) {

	/* /////[ global-nav ] ////////////////////////////////// */

	.pc-nav {
		display: block;
	}

	.pc-disable {
		display: none;
	}

	#container {
		padding-top: 120px;
	}

}

.sup{
  font-size: 0.7em;
	vertical-align: top;
  display: inline;
}

.win .sup {
	font-size: 0.5em;
	vertical-align: super;
}
