* {
	box-sizing: border-box;
}
html, body {
	font-family: 'Roboto', helvetica, arial, 'hiragino kaku gothic pro', meiryo, 'ms pgothic', sans-serif;
	-webkit-font-smoothing: antialiased;
}

/*****************************************************
*** common ***
*****************************************************/
h1 {
	font-size: 40px;
	font-weight: 600;
	line-height: 1.8em;
	margin-top: 100px;
	margin-bottom: 50px;
	font-weight: 600;
}
h2 {
	font-family: 'Varela Round', sans-serif,arial, "hiragino kaku gothic pro",meiryo,"ms pgothic";
	color: #157fc2;
	font-size: 42px;
	font-weight: 600;
	padding-top: 80px;
	padding-bottom: 40px;
	letter-spacing: 5px;
	text-align: center;
}
h3 {
	font-size: 32px;
	font-weight: 300;
	margin-bottom: 46px;
}
h4 {
	font-size: 26px;
	margin-bottom: 25px;
}
p.subtitle {
	font-size: 12px;
	letter-spacing: 0.1em;
	font-weight: 700;
	text-transform: uppercase;
}
p {
	font-size: 18px;
	line-height: 28px;
	color: #8c8f94;
}
a {
	color: #157fc2;
	text-decoration: underline;
}
a:focus {
	outline: none;
}
ul {
	padding-left: 0px;
}

ul > li {
	list-style: none;
}
.p {
	padding-top: 125px;
	text-align: center;
}

.p a {
	text-decoration: underline;
}
.f-w-300 {
	font-weight: 300;
}
.f-w-400 {
	font-weight: 400;
}
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
	zoom: 1;
	/* For IE 6/7 (trigger hasLayout) */
}
.block {display: inline-block;}
.fontBold {font-weight: 600;}
.fRight {float: right;}
.fLeft{float: left;}
/*****************************************************
*** Buttons ***
*****************************************************/
.btn {
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
	color: #26272d;
	border: 1px solid rgba(38, 39, 45, 0.1);
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	min-width: 130px;
	height: 40px;
	padding-top: 9px;
}
.btn:active, .btn:focus {
	outline: none;
	box-shadow: none;
}
.btn-lg {
	padding: 14px 48px;
}
.btn-blue {
	background-color: #157fc2;
	color: white;
}
.btn-white {
	background-color: rgba(255, 255, 255, 0.48);
	color: #157fc2;
}
.btn-green {
	background-color: #6fc754;
	color: white;
}
.btn-dark {
	background-color: #131315;
	color: white;
}
.btn-blue:hover, .btn-blue:focus,
.btn-green:hover, .btn-green:focus,
.btn-dark:hover, .btn-dark:focus {
	color: #ffffff;
}

/*****************************************************
*** Main Nav ***
*****************************************************/
.main-nav {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	padding: 44px 0;
	font-size: 16px;
	z-index: 10;
	background-color: transparent;
	webkit-transition: all 0.37s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.37s cubic-bezier(0, 0, 0.58, 1);
}
.main-nav #navigation {
	color: #26272d;
	text-decoration: none;
	position: absolute;
	top: 45%;
	font-size: 20px;
	margin-top: -10px;
	z-index: 2;
}
.main-nav #navigation:hover {
	color: #157fc2 !important;
}
.main-nav ul {
	padding: 0;
}
.main-nav ul li {
	display: inline-block;
	margin-right: 20px;
}
.main-nav ul li a {
	color: #26272d;
	text-decoration: none;
}
.main-nav ul li a:hover {
	color: #157fc2;
}
.main-nav ul li .help {
	color: rgba(38, 39, 45, 0.4);
}
.main-nav ul li .btn-blue {
	color: #ffffff;
}
.main-nav ul li .btn-blue:hover {
	color: #ffffff;
}
.main-nav ul li:last-child {
	margin-right: 0;
}
.main-nav ul.left {
	text-align: left;
	margin-left: 50px;
}
.main-nav ul.left li {
	display: inline-block;
	padding: 9px 0;
}
.main-nav ul.left li:first-child {
	margin-right: 30px;
}
.main-nav ul.right {
	text-align: right;
}
.main-nav ul.right .btn-blue {
	padding-top: 12px;
	font-size: 12px;
}
.main-nav ul.right .btn-white {
	padding-top: 11px;
	font-size: 12px;
	min-width: 90px;
}
.main-nav .logo {
	display: inline-block;
	padding-top: 11px;
}
.main-nav #slide_out_menu {
	position: fixed;
	display: block;
	width: 380px;
	max-width: 650px;
	height: 100%;
	left: -380px;
	top: 0;
	padding: 40px;
	z-index: 999;
	background: #26272d;
	transition: left 0.7s cubic-bezier(0.545, 0, 0.05, 1);
}
.main-nav #slide_out_menu .logo {
	font-size: 16px;
	color: #fff;
}
.main-nav #slide_out_menu .menu-close {
	position: absolute;
	color: #ffffff;
	right: 20px;
	top: 52px;
}
.main-nav #slide_out_menu ul {
	margin-top: 40px;
}
.main-nav #slide_out_menu ul li {
	display: block;
	margin: 10px 0;
}
.main-nav #slide_out_menu ul li a {
	color: #ffffff;
}
.main-nav #slide_out_menu ul li a:hover {
	color: #157fc2;
}
.main-nav #slide_out_menu ul li:last-child {
	margin-bottom: 10px;
}
.main-nav #slide_out_menu .slide_out_menu_footer {
	position: absolute;
	display: block;
	width: 100%;
	left: 0;
	bottom: 0;
	padding: 20px 40px 25px;
}
.main-nav #slide_out_menu .slide_out_menu_footer .more-info ul li {
	font-size: 12px;
	line-height: 24px;
	color: rgba(255, 255, 255, 0.8);
	margin: 0;
	text-align: right;
}
.main-nav #slide_out_menu .slide_out_menu_footer .more-info .btn {
	font-size: 12px;
	padding: 5px 10px;
	height: 30px;
	width: 80px;
}
.main-nav #slide_out_menu.xs-screen {
	overflow-y: auto;
}
.main-nav #slide_out_menu.xs-screen ul {
	margin-top: 40px;
}
.main-nav #slide_out_menu.xs-screen .slide_out_menu_footer {
	position: relative;
	padding: 0;
	margin-top: 40px;
}
.main-nav #slide_out_menu.xs-screen .slide_out_menu_footer .more-info p {
	font-size: 14px;
	line-height: 24px;
	color: rgba(255, 255, 255, 0.8);
	margin: 0;
}
.main-nav #slide_out_menu.open {
	left: 0;
}
.main-nav.active {
	background-color: rgba(255, 255, 255, 0.82);
	padding: 15px 0 7px;
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15);
	-ms-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15);
	-webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15);
}

/*****************************************************
*** Header ***
*****************************************************/
.header {
	padding: 320px 0 200px;
	background-image: url("../images/banner_background.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
	overflow: hidden;
}
.header p {
	font-size: 13px;
	color: #a8abaf;
	font-weight: 600;
	line-height: 1.8em;
}

/*****************************************************
*** slider ***
*****************************************************/
.carousel-caption{
	width: 100%;
	z-index: 1;
	background-color: #f2efed;
	text-shadow: none !important;
}
.service .carousel-caption {
	position: static;
}
.carousel-indicators .active {
	width: 20px;
	height: 20px;
	margin: 1px;
}
.carousel-indicators li {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 1px;
	text-indent: -999px;
	cursor: pointer;
	border: 1px solid #fff;
	border-radius: 10px;
	margin-left: 5px;
	margin-right: 5px;
}
.main-container {
	padding: 10px 15px;
}
.carousel-indicators {
	bottom: 0;
}
.carousel-control.right,
.carousel-control.left {
	background-image: none;
}
.carousel .item {
	min-height: 320px;
	width:100%;
	margin-bottom: 100px;
}
.carousel-caption h3 {
	padding: .5em;
}
.carousel .icon-container {
	display: inline-block;
	font-size: 25px;
	line-height: 25px;
	padding: 1em;
	text-align: center;
	border-radius: 50%;
}
.carousel-caption button {
	border-color: #00bfff;
	margin-top: 1em; 
}

/*****************************************************
*** Service ***
*****************************************************/
.service {
	background-color: #f2efed;
	margin-top: -20px;
}
.service .carousel-indicators li{
	background-color: #ddd;
}
.service .carousel-indicators .active{
	background-color: #157fc2;
}
.service_title {
	font-size: 30px;
	font-weight: 600;
	color: #000;
	line-height: 1.8em;
	text-align: left;
}
.service_text {
	font-size: 15px;
	text-align: left;
}
.service_iphone {
	position: absolute;
	width: 450px;
	margin-left: -100px;
}
.service_map {
	position: absolute;
	width: 620px;
	float: right;
	right: -250px;
}
.service_ipad {
	position: absolute;
	width: 250px;
}
.service_macbook {
	position: absolute;
	width: 700px;
	float: right;
	right: -250px;
}

/*****************************************************
*** members ***
*****************************************************/
.members {
	background-color: #f6f3f1;
	margin-top: -20px;
}
.members i {
	color: #8c8f94;
	font-size: 22px;
}
.members .star-rating {
	margin-top: 17px;
}
.members .star-rating .gold-star {
	color: #f2bc3b;
}
.members .customer-name {
	margin-top: 56px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #26272d;
}
.members .members_box {
	padding-top: 174px;
}
.members .members_box_name {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 5px;
	color: #333;
}
.members .members_box_nameEn {
	font-size: 12px;
	color: #999;
	margin-bottom: 50px;
}
.members .members_box_text {
	font-size: 15px;
	text-align: left;
}
.members .carousel-indicators {
	position: absolute;
	top: 0;
	bottom: auto;
	width: 100%;
	z-index: 5;
	left: 0;
	margin-left: 0;
	padding-left: 30px;
	padding-right: 30px;
}
.members .carousel-indicators li {
	width: 130px;
	height: 130px;
	border-radius: 0;
	margin: 0;
	border: none;
	opacity: .2;
	transform: scale(0.7);
	-ms-transform: scale(0.7);
	-webkit-transform: scale(0.7);
	transition: all 0.97s cubic-bezier(0.545, 0, 0.05, 1);
}
.members .carousel-indicators li img {
	position: relative;
	border-radius: 100%;
	z-index: 2;
	box-shadow: 0px 12px 30px 0px rgba(92, 95, 101, 0.18);
}
.members .carousel-indicators li:first-child {
	float: left;
}
.members .carousel-indicators li:first-child img {
	box-shadow: 10px 12px 30px 0px rgba(92, 95, 101, 0.18);
}
.members .carousel-indicators li:last-child {
	float: right;
}
.members .carousel-indicators li:last-child img {
	box-shadow: -10px 12px 30px 0px rgba(92, 95, 101, 0.18);
}
.members .carousel-indicators li.active {
	transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	opacity: 1;
	background: none;
}
.members .carousel-control.left,
.members .carousel-control.right {
	background: none;
	width: 41px;
	height: 41px;
	top: 45px;
	line-height: 41px;
}
.members .carousel-control.left {
	left: -100px;
}
.members .carousel-control.right {
	right: -100px;
}

/*****************************************************
*** company ***
*****************************************************/
.company {
	min-height: 600px;
	margin-top: -20px;
	background-color: #f2efed;
}
.company h2 {
	text-align: left;
}
.company .company_list {
	margin-bottom: 30px;
}
.company .company_listTitle {
	float: left;
	width: 80px;
	font-weight: 600;
	color: #ababab;
	line-height: 1.8em;
}
.company .company_listText {
	color: #8c8f94;
	padding-left: 80px;
}
.company .btn {
	float: right;
	font-size: 11px;
	min-width: 90px;
	height: 30px;
	padding-top: 5px;
	padding-bottom: 5px;
}
.company .company_map {
	position: absolute;
	right: 0;
	overflow: hidden;
	min-height: 600px;
	background: url(../images/office-map.jpg) no-repeat;
	background-position: right top;
}

/* 20230427追記 */
.company .company_map iframe {
    height: 100% !important;
}
.ja .company .company_map {
	background: none;
	height: 600px;
}

/*****************************************************
*** inquiry ***
*****************************************************/
.inquiry {
	background-color: #f6f3f1;
	padding-bottom: 80px;
}
input[type="text"],
input[type="email"] {
	width: 100%;
	height: 45px;
	max-width: 100%;
	border: 1px solid rgba(38, 39, 45, 0.2);
	padding: 3px 26px;
	font-size: 14px;
	background-color: #fff;;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	box-shadow: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
}
input[type="text"]:focus,
input[type="email"]:focus {
	outline: none;
	color: #157fc2;
}
.form-horizontal .form-group {
	margin-right: 0;
	margin-left: 0;
}
.btn-primary {
	width: 100%;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
}
textarea.form-control {
	height: auto;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	box-shadow: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
}
.form-group {
	margin-bottom: 30px;
}
.has-success .form-control {
	border: 1px solid rgba(38, 39, 45, 0.2);
}
.has-success .form-control:focus {
	border-color: rgba(38, 39, 45, 0.2);
	-webkit-box-shadow: none
	box-shadow: none;
}
.inquiry_text {
	text-align: center;
	font-size: 12px;
	color: #ababab;
}

/***** modal *****/
.modal-content {
	line-height: 2.0em;
}
.modal-content .btn-primary{
	width: 130px;
}
.modal-header {
	font-weight: 600;
}
.modal-footer {
	padding: 15px;
	text-align: center;
	border-top: 1px solid #e5e5e5;
}

/*****************************************************
*** Footer ***
*****************************************************/
.footer {
	background-color: #f2efed;
}
.footer .footer-container {
	padding-top: 60px;
	padding-bottom: 40px;
}
.footer .copyright-container {
	padding-top: 20px;
	padding-bottom: 25px;
}
.footer .logo {
	margin-top: 20px;
	width: 100%;
}
.footer .footer_privacy ul li{
	color: #8c8f94;
	font-size: 11px;
	text-align: right;
	line-height: 2.3em;
}

/*****************************************************
*** privacy ***
*****************************************************/
.privacy {
	margin-top: 160px;
	margin-bottom: 160px;
	line-height: 1.8em;
}
.privacy p, .privacy ul li {
	color: #8c8f94;
	font-size: 13px;
}
.privacy p, .privacy ul {
	margin-bottom: 20px;
}
.privacy .privacy_listTitle {
	font-weight: 600;
}
.privacy_day {
	float: right;
	text-align: right;
	font-size: 12px;
	margin-top: 40px;
}

/*****************************************************
Responsive Styles
*****************************************************/
@media only screen and (max-width: 992px) {
	h1 {
		font-size: 36px;
		line-height: 1.5em;
	}
	/*** Main Nav ***/
	.main-nav .logo {
		padding-top: 0px;
	}
	.main-nav #slide_out_menu {
		position: fixed;
		display: block;
		width: 300px;
		height: 100%;
		left: -300px;
	}
	.main-nav #slide_out_menu .menu-close {
		top: 41px;
	}

	/*** service ***/
	.service .carousel .item {
		min-height: 250px;
	}
	.service .service_text {
		font-weight: 600;
	}
	.service_iphone {
		position: absolute;
		width: 300px;
	}
	.service_map {
		position: absolute;
		width: 500px;
		float: right;
		right: -280px;
	}
	.service_ipad {
		position: absolute;
		width: 200px;
		margin-left: -30px;
	}
	.service_macbook {
		position: absolute;
		width: 500px;
		float: right;
		margin-right: 20px;
	}

	/*** members ***/
	.members .carousel-control.left,
	.members .carousel-control.right {
		display: none;
	}
	.members .carousel-indicators {
		padding-left: 0px;
		padding-right: 0px;
	}
	.members .members_box_text {
		font-weight: 600;
	}

	/*** company ***/
	.company,
	.company .company_map {
		min-height: 500px;
	}
	.company h2 {
		text-align: center;
		margin-top: -20px;
	}
	.company .company_list {
		margin-bottom: 20px;
		font-size: 14px;
		font-weight: 600;
		margin-bottom: 10px;
	}
	.company .company_map {
		position: relative;
		min-height: 520px;
		background-size: 100%;
		background: url(../images/office-map1.jpg) no-repeat;
		background-position: center top;
		margin-top: 20px;
	}
	.ja .company .company_map {
		height: 520px;
	}

	/*** inquiry ***/
	.btn-primary {
		width: 100%;
		color: #fff;
		font-size: 16px;
		font-weight: 600;
	}

	/*** Footer ***/
	.footer .socials {
		margin-bottom: 60px;
	}
	.footer .footer-links {
		margin-bottom: 30px;
	}
	.footer .footer-links:last-child {
		margin-bottom: 0;
	}
	/*** Copyright Container ***/
	.copyright-container .text-right {
		text-align: left;
		margin-top: 22px;
	}
}

@media only screen and (max-width: 768px) {
	/*** iPhone Screens ***/
	h1 {
		font-size: 30px;
		line-height: 1.5em;
	}
	h2 {
		padding-top: 40px;
		padding-bottom: 20px;
	}
	/*** header ***/
	.main-nav.active {
		padding: 15px 0;
		box-shadow: none;
		height: 50px;
	}
	.main-nav.active .active_logo{
		margin:0 auto;
		width: 150px;
		background:url(../images/logo.png);
		background-repeat: no-repeat;
		background-size: 100%;
		height: 50px;
	}
	.main-nav .right {
		padding: 0;
		margin-top: -7px;
	}
	.main-nav.active .right {
		margin-top: -57px;
	}
	.btn {
		font-size: 11px;
		font-weight: 400;
		text-decoration: none;
		color: #26272d;
		border: 1px solid rgba(38, 39, 45, 0.1);
		border-radius: 30px;
		-moz-border-radius: 30px;
		-webkit-border-radius: 30px;
		min-width: 80px;
		height: 35px;
		padding-top: 9px;
	}
	.header p {
		font-size: 11px;
		font-weight: 600;
		color: #a8abaf;
		line-height: 1.8em;
	}

	/*** slide ***/
	.service .carousel .item {
		min-height: 380px;
	}
	.service_text {
		font-size: 14px;
		/* font-style: inherit; */
	}
	.service_box {
		margin-left: 200px;
	}
	.service_title {
		font-size: 24px;
		margin-top: 10px;
	}
	.service_text {
		font-size: 14px;
		font-weight: 600;
		margin-bottom: 10px;
	}
	.service_iphone {
		position: absolute;
		width: 300px;
	}
	.service_map {
		position: static;
		float: right;
		width: 70%;
	}
	.service_ipad {
		position: absolute;
		width: 200px;
		margin-left: -30px;
	}
	.service_macbook {
		position: static;
		width: 70%;
		float: right;
	}
	/*** members ***/
	.members .carousel .item {
		min-height: 380px;
	}
	.members .members_box_text {
		font-size: 14px;
		font-weight: 600;
	}
	/*** company ***/
	.company h2 {
		margin-top: 0;
		text-align: center;
	}
	.company .company_list {
		margin-bottom: 20px;
		font-size: 14px;
		font-weight: 600;
	}
	.company .btn {
		float: none;
		color: #fff;
	}
	.company .company_list {
		margin-bottom: 20px;
	}
	.company .company_map {
		position: relative;
		min-height: 520px;
		background-size: 100%;
		background: url(../images/office-map1.jpg) no-repeat;
		background-position: center top;
	}
	/*** inquiry ***/
	.btn-primary {
		width: 100%;
		color: #fff;
		font-size: 14px;
		font-weight: 600;
	}
	.footer .logo {
		width: 200px;
	}
}

@media only screen and (max-width: 575px) {
	input[type="text"],
	input[type="email"] {
		padding: 16px 26px;
	}
	/*** Header ***/
	h1 {
		font-size: 30px;
		line-height: 1.5em;
	}
	h2 {
		padding-top: 50px;
		padding-bottom: 20px;
	}
	.main-nav.active {
		padding: 15px 0;
		box-shadow: none;
		height: 50px;
	}
	.main-nav.active .active_logo{
		margin:0 auto;
		width: 150px;
		background:url(../images/logo.png);
		background-repeat: no-repeat;
		background-size: 100%;
		height: 50px;
	}
	.header {
		padding: 160px 0 160px;
	}
	.header p {
		font-size: 11px;
		color: #a8abaf;
	}
	.header .header_iphone {
		bottom: -220px;
		margin-left: -140px;
		width: 280px;
	}

	/*** slide ***/
	.service .carousel .item {
		min-height: 600px;
	}
	.service .carousel .service_box {
		margin-left: 0;
	}
	.service_text {
		font-size: 13px;
		font-weight: 600;
	}
	.service_iphone {
		position: static;
		width: 80%;
		margin: 0 auto;
	}
	.service_map {
		position: static;
		width: 90%;
		right: 0;
		float: none;
		margin: 0 auto;
	}
	.service_ipad {
		position: static;
		width: 200px;
		margin: 0 auto;
	}
	.service_macbook {
		position: static;
		width: 100%;
		float: right;
		right: 0px;
		margin-right: -70px;
	}

	/*** members ***/
	.members {
		padding: 0;
	}
	.members .carousel .item {
		min-height: 320px;
	}
	.members .carousel-indicators li {
		width: 90px;
		height: 90px;
	}
	/*** company ***/
	.company h2 {
		text-align: center;
	}
	.company .company_list {
		font-size: 14px;
	}
	.company .company_map {
		position: relative;
		min-height: 260px;
		background-size: 100%;
	}
	.ja .company .company_map {
		height: 260px;
	}
	/*** inquiry ***/
	.btn-primary {
		width: 100%;
		color: #fff;
		font-size: 14px;
		font-weight: 600;
	}
	.inquiry_text {
		text-align: left;
		font-size: 11px;
		color: #ababab;
	}
	/*** Footer ***/
	.footer {
		padding-bottom: 10px;
		text-align: center;
	}
	.footer .logo {
		width: 200px;
		margin-bottom: 40px;
	}
	.footer .footer_privacy ul li{
		font-size: 11px;
		text-align: center;
		line-height: 2.3em;
	}
	.footer .footer-container {
		padding-top: 40px;
		padding-bottom: 10px;
	}
	.footer .footer-links {
		width: 100%;
	}
}
/*# sourceMappingURL=style.css.map */