/* ==== Google font ==== */
/*@import url('https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic|Montserrat:700|Merriweather:400italic');
*/

body {
/*		width: 100%;
height: 100%;
font-family: 'Lato',sans-serif;*/
font-weight: 300;
color: #666;
background-color: #fff;
position:relative;
font-family: "メイリオ", Meiryo, "Open Sans", "Helvetica Neue", Helvetica, "Arial", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
-webkit-print-color-adjust: exact;
}

html {
		width: 100%;
		height: 100%;
}

h1, h2, h3, h4, h5, h6 {
		margin: 0px;
		text-transform: uppercase;
		font-weight: 700;
		letter-spacing: 1px;
}

p {
		margin: 0 0 0px;
		font-size: 16px;
		line-height: 1.6em;
}

p.lead {
	font-weight: 600;
}

a {
		color: #28c3ab;
		-webkit-transition: all .2s ease-in-out;
		-moz-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
}

a:hover,
a:focus {
		text-decoration: none;
		color: #999;
}

.light {
		font-weight: 400;
}



/* loader */
#preloader {
		background: #ffffff;
		bottom: 0;
		height: 100%;
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
		width: 100%;
		z-index: 999;
}


#loaderInner {
		background:#ffffff url(/capsule/img/spinner.gif) center center no-repeat;
		height: 60px;
		left: 50%;
		margin: -50px 0 0 -50px;
		position: absolute;
		top: 50%;
		width: 60px;
}

@keyframes boxSpin{
	0%{
		transform: translate(-10px, 0px);
	}
	25%{
		transform: translate(10px, 10px);
	}
	50%{
		transform: translate(10px, -10px);
	}
	75%{
		transform: translate(-10px, -10px);
	}
	100%{
		transform: translate(-10px, 10px);
	}
}


@keyframes shadowSpin{
	0%{
		box-shadow: 10px -10px #39CCCC, -10px 10px #FFDC00;
	}
	25%{
		box-shadow: 10px 10px #39CCCC, -10px -10px #FFDC00;
	}
	50%{
		box-shadow: -10px 10px #39CCCC, 10px -10px #FFDC00;
	}
	75%{
		box-shadow: -10px -10px #39CCCC, 10px 10px #FFDC00;
	}
	100%{
		box-shadow: 10px -10px #39CCCC, -10px 10px #FFDC00;
	}
}

#load {
	z-index: 9999;
	background-color: #FF4136;
	opacity: 0.75;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 50%;
	margin: -5px auto 0 auto;
	left: 0;
	right: 0;
	border-radius: 0px;
	border: 5px solid #FF4136;
	box-shadow: 10px 0px #39CCCC, 10px 0px #01FF70;
	animation: shadowSpin 1s ease-in-out infinite;
}

/* misc */
hr {
	margin-top: 10px;
}

/* margins */
.mb0 {margin-bottom:0 !important;}
.mb10 {margin-bottom:10px !important;}
.mb20 {margin-bottom:20px !important;}
.mb30 {margin-bottom:30px !important;}
.mb40 {margin-bottom:40px !important;}
.mb50 {margin-bottom:50px !important;}


/* ===========================
--- General sections
============================ */

.home-section {
		padding-top: 110px;
		padding-bottom: 110px;
		display:block;
		position:relative;
		z-index:120;
}


.section-heading h2 {
	font-size: 40px;
}
.section-heading i {
	margin-bottom: 20px;
}


/* --- section bg var --- */

.bg-white {
	background: #fff !important;
}

.bg-gray {
	background: #f8f8f8;
}


.bg-dark {
	background: #575757;
}

/* --- section color var --- */

.text-light {
	color: #fff;
}

#btn {
	position: fixed;
	bottom: 15%;
	right: 5%;
	z-index: 999;
	height:1px;
}
#btn .container {height:1px;}
#btn a {
	margin-left:90%;
	text-decoration: none;
	width: 80px;
	padding: 1px;
	text-align: center;
	display: block;
	border-radius: 40px;
}
#btn a:hover {
	text-decoration: none;
	background: #ff6d76;
}

/* ===========================
--- Intro
============================ */
.article_wrapper {width:95%;margin:0 auto;padding:2%;}

.intro {
	width:auto !important;
	background:#FFF;
	background: url(/capsule/img/header_bg2020.jpg) no-repeat top center !important;
	background-size:cover !important;
/*	position:relative;
	background: url(../img/main.png) no-repeat top center; */
}
#intro h1 {margin:0;}
#intro .container {position:relative;}
#header_capsule, #header_copy, #header_copy2 {position:absolute;}

#intro.intro {padding:0;}

/* ===========================
--- When
============================ */
.when {
	width:100%;
	background: url(/capsule/img/when_bg.png) !important;
}

#when.when {
	padding:90px 0 90px 0;
}
#when h2 {margin:0 auto 15px;}
#when h3 {font-size:1.2em;color:#27366f;text-align:center;font-weight:normal;}

#when .box {text-align:center;margin:5px auto;}
#when .box p {color:#27366f;font-size:0.9em;min-height:5.0em;}
#when .box img {}



/* ===========================
--- What
============================ */
.what {
	width:100%;
	background: url(/capsule/img/what_bg.png) !important;
}

#what.what {
	padding:90px 0 90px 0;
}
#what h2 {margin:0 auto 15px;}
#what h3 {margin:0 auto;font-size:1.0em;color:#27366f;font-weight:normal;}

#what .container {background: url(/capsule/img/what_model.png) no-repeat center left !important;
	background-size: 20% !important}
#what p {color:#27366f;font-size:1em;}


/* ===========================
--- Footer
============================ */

footer {
	width:100%;
	background: url(/capsule/img/what_bg.png) !important;
}
footer .bg-white {padding-top:20px;padding-bottom:20px;}
footer p {color: #27366f;font-size:1.0em;}
footer h2 {color:#27366f;font-weight:bold;}
footer #spec {border:1px solid #27366f;padding:20px;}
footer #prd {background:#27366f;color:#fff;text-align: center;border-radius: 5px;}
footer a {color:#fff;display:block;padding:20px;}
footer a:after {
	content: "＞";
	margin-left: 5px;
	font-size: small;
	color: #fff;
	text-align: center;
	color: #fff;
	float: right;
	position: relative;
	display: block;
}
footer #credit p {text-align:center;font-size:0.8em;margin:20px auto;color:#000;}
footer #credit img {margin:0 auto;}
/* ===========================
--- Elements
============================ */

.btn {
	border-radius: 0;
		text-transform: uppercase;
		font-family: Montserrat,sans-serif;
		font-weight: 400;
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
}


.btn-circle {
		width: 70px;
		height: 70px;
		margin-top: 15px;
		padding: 7px 16px;
		border: 2px solid #fff;
		border-radius: 50%;
		font-size: 40px;
		color: #fff;
		background: 0 0;
		-webkit-transition: background .3s ease-in-out;
		-moz-transition: background .3s ease-in-out;
		transition: background .3s ease-in-out;
}

.btn-circle.btn-dark {
		border: 2px solid #666;
		color: #666;
}


.btn-circle:hover,
.btn-circle:focus {
		outline: 0;
		color: #fff;
		background: rgba(255,255,255,.1);
}

.btn-circle.btn-dark :hover,
.btn-circle.btn-dark :focus {
		outline: 0;
		color: #999;
		background: #fff;
}

.btn-circle.btn-dark :hover i,
.btn-circle.btn-dark :focus i{
		color: #999;
}

.page-scroll .btn-circle i.animated {
		-webkit-transition-property: -webkit-transform;
		-webkit-transition-duration: 1s;
		-moz-transition-property: -moz-transform;
		-moz-transition-duration: 1s;
}

.page-scroll .btn-circle:hover i.animated {
		-webkit-animation-name: pulse;
		-moz-animation-name: pulse;
		-webkit-animation-duration: 1.5s;
		-moz-animation-duration: 1.5s;
		-webkit-animation-iteration-count: infinite;
		-moz-animation-iteration-count: infinite;
		-webkit-animation-timing-function: linear;
		-moz-animation-timing-function: linear;
}

@-webkit-keyframes pulse {
		0 {
				-webkit-transform: scale(1);
				transform: scale(1);
		}

		50% {
				-webkit-transform: scale(1.2);
				transform: scale(1.2);
		}

		100% {
				-webkit-transform: scale(1);
				transform: scale(1);
		}
}

@-moz-keyframes pulse {
		0 {
				-moz-transform: scale(1);
				transform: scale(1);
		}

		50% {
				-moz-transform: scale(1.2);
				transform: scale(1.2);
		}

		100% {
				-moz-transform: scale(1);
				transform: scale(1);
		}
}


#text {
		color: #fff;
		background: #ffcc00;
}

#map {
	height: 500px;
}


.btn-skin:hover,
.btn-skin:focus,
.btn-skin:active,
.btn-skin.active {
	color: #fff;
	background-color: #666;
	border-color: #666;
}


.btn-default:hover,
.btn-default:focus {
		border: 1px solid #28c3ab;
		outline: 0;
		color: #000;
		background-color: #28c3ab;
}

.btn-huge {
		padding: 25px;
		font-size: 26px;
}

.banner-social-buttons {
		margin-top: 0;
}


/* Media queries */

@media(min-width:1801px) {																						/* xlarge  20170324 renew */
.container {
	width:970px;
}
#header_capsule {
	top:80px;
	left:67px;
	width:180px;
}
#header_copy {
	top:290px;
	left:0px;
	width:350px;
}
#header_copy2 {
	top:50px;
	left:350px;
	width:150px;
}

footer h2 {
	font-size:1.9em;
}
footer #spec {
	text-align:center;
}
}



@media(min-width:992px) and (max-width:1800px) {																						/* large */
.container {
	width:970px;
}
#header_capsule {
	top:80px;
	left:67px;
	width:180px;
}
#header_copy {
	top:280px;
	left:0px;
	width:350px;
}
#header_copy2 {
	top:50px;
	left:350px;
	width:150px;
}

footer h2 {
	font-size:1.9em;
}
footer #spec {
	text-align:center;
}
}
@media(max-width:991px) {																						/* mid */
#header_capsule {
	top:200px;
	right:0px;
	width:200px;
}
#header_copy {
	top:150px;
	left:0px;
	width:250px;
}
#header_copy2 {
	top:50px;
	left:260px;
	width:100px;
}
footer h2 {
	font-size:1.45em;
}
footer #spec {
	text-align:center;
}
}
@media (max-width:767px) {																									/* small */
#header_capsule {
	top:100px;
	left:10px;
	width:250px;
}
#what .container {
	background: url(/capsule/img/what_model.png) no-repeat top 30% left !important;
	background-size: 40%!important}
#what .article_wrapper p {margin-bottom:20px;}
.team.boxed-grey {
	margin-bottom: 30px;
}
.boxed-grey {
	margin-bottom: 30px;
}
footer h2 {
	font-size:1.6em;
	text-align:center;
}
footer #spec {
	text-align:center;
}
}

@media (max-width:480px) {																												/* xs */
#btn {
	bottom: 15%;
	right: 18%;
}

#when .box p {text-align:left;}
#what .container {
	background: url(/capsule/img/what_model.png) no-repeat top 30% left !important;
	background-size: 40% !important}
#what .article_wrapper p {margin-bottom:20px;}

footer h2 {
	text-align:center;
}

.navbar-custom .nav.navbar-nav {
	background-color: rgba(255,255,255,.4);
}
.navbar.navbar-custom.navbar-fixed-top {
	margin-bottom: 30px;
}
.tp-banner-container {
	padding-top:40px;
}
.page-scroll a.btn-circle {
	width: 40px;
	height: 40px;
	margin-top: 10px;
	padding: 7px 0;
	border: 2px solid #fff;
	border-radius: 50%;
	font-size: 20px;
}
}