@charset "UTF-8";

/* fonts */
body {
    font-family: 'Open Sans', 'Helvetica Neue', Helvetica, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', Arial, Verdana, sans-serif;
    background-color: #E6E6E6;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: subpixel-antialiased;
	
	letter-spacing:0;/* 競合のため追加 */
	padding-bottom: 0;　/* 変な空がでるので削除*/
}

/* navbar */
.navbar-wrapper {
	position:inherit;/* 競合追加 */
}
.navbar {
	margin-bottom: 10px;
}
.navbar-brand { 
/* ロゴとメニューの重なり対応 */
/*    float: none */
}

.navbar-wrapper {
  margin: 0px 0px;
  background-color: #ffffff;
/*	padding-top: 14px;*/
	height: 110px;
}
ul.navbar-right {
  display:inline-block;
  list-style-type: none;
  float:right;
  font-weight: bold;
  margin-top:44px;
  margin-bottom:0;
  margin-right: 0px;
}
/* mgmenu restyle */
.page_wrapper {
	margin-top:-20px;
	margin-bottom: -20px;
    background-color: #ffffff;
}
.mgmenu > li {
	box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}
.mgmenu > li > .dropdown_fullwidth {
	box-shadow: 0 2px 4px rgba(0,0,0,0.3);
	border: solid 0px white;
	border-radius: 0 0;
}
.mgmenu li .dropdown_container {
	border-radius: 0 0;
}
/* submenu area gap adjust */
.mgmenu li .dropdown_container, .mgmenu li .dropdown_fullwidth {
    margin: 0px 0px 40px 0px;
}
.mgmenu li.right_item .dropdown_container {
    right: 0px;
}



/* fade-in carousel */
.carousel {
	margin-bottom: 0px;
	height: 260px;
}
.carousel-inner {
	background-color: rgba(0,0,0,1.0);
	overflow: visible;  /* for firefox */
}
.carousel-inner > .item > .container {
	margin: 0 0;
	padding: 0 0;
	background-color: rgba(0,0,0,0);
}
.carousel-inner > .item > .container > .carousel-caption {
	margin: 0 0;
	padding: 0 0;
  	width: 100%;
  	top: 0;
  	left: 0;
  	right: 0;
  	bottom: 0;
}
.carousel-inner > .item > .container > .carousel-caption > .catchtext {
	margin: 120px 0 auto 0;
	font-family: 'Cardo', Times, serif;
	font-size: 40px;
	font-weight: 400; 
	color: #6FBB3E; /* 111,187,62 */
}
.carousel-inner > .item {
	height: 440px;
	background-position: center center;
	background-repeat: no-repeat; 
	background-color: #030000;
}

/* keyframe animation */
@-webkit-keyframes fadeIn { from { opacity:0.3; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0.3; } to { opacity:1; } }
@-o-keyframes fadeIn { from { opacity:0.3; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0.3; } to { opacity:1; } }

@-webkit-keyframes fadeOut { from { opacity:1; } to { opacity:0.3; } }
@-moz-keyframes fadeOut { from { opacity:1; } to { opacity:0.3; } }
@-o-keyframes fadeOut { from { opacity:1; } to { opacity:0.3; } }
@keyframes fadeOut { from { opacity:1; } to { opacity:0.3; } }

.carousel-fade .item {
  opacity: 0;
  -webkit-transition: opacity 2s ease-in-out;
  -moz-transition: opacity 2s ease-in-out;
  -ms-transition: opacity 2s ease-in-out;
  -o-transition: opacity 2s ease-in-out;
  transition: opacity 2s ease-in-out;
  left: 0 !important;
}
.carousel-fade .active {
  opacity: 1 !important;
}
.carousel-fade .left {
  opacity: 0 !important;
  -webkit-transition: opacity 0.5s ease-in-out !important;
  -moz-transition: opacity 0.5s ease-in-out !important;
  -ms-transition: opacity 0.5s ease-in-out !important;
  -o-transition: opacity 0.5s ease-in-out !important;
  transition: opacity 0.5s ease-in-out !important;
}

/* page load box animations */
@-webkit-keyframes fadeIn2 { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn2 { from { opacity:0; } to { opacity:1; } }
@-o-keyframes fadeIn2 { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn2 { from { opacity:0; } to { opacity:1; } }
.fade-in {
	-webkit-animation:fadeIn2 ease-in 1;  
	-moz-animation:fadeIn2 ease-in 1;
	animation:fadeIn2 ease-in 1;

	-webkit-animation-fill-mode:forwards; 
	-moz-animation-fill-mode:forwards;
	animation-fill-mode:forwards;

	/* effect time */	
	-webkit-animation-duration:1s;
	-moz-animation-duration:1s;
	animation-duration:1s;
}
/* start delay */	
.fade-in.delay0 {
	-webkit-animation-delay: 0.1s;
	-moz-animation-delay: 0.1s;
	animation-delay: 0.1s;
}
.fade-in.delay1 {
	-webkit-animation-delay: 0.5s;
	-moz-animation-delay: 0.5s;
	animation-delay: 0.5s;
}
.fade-in.delay2 {
	-webkit-animation-delay: 1s;
	-moz-animation-delay: 1s;
	animation-delay: 1s;
}

/* 競合のため追加 */
h1 {
	border-bottom:none;
	font-size:inherit;
	}

/* item box */

.container.marketing {
	width:982px;
    padding-left: 10px;
    padding-right: 10px;

}

.container.marketing .row {
/*
    margin-left: -10px;
    margin-right: -10px;
    margin-left: 0px;
    margin-right: 0px;
*/
    text-align: center;
}

.marketing .col-lg-4 { 
    z-index:20;
    margin: 0px 8px 1em 8px;
/*    margin-bottom: 1em; */
    padding-left: 0px;
    padding-right: 0px;
    float: none;
    display: inline-block;
    /* fixed box */
    width: 310px;
    height: 310px; 
}
.row > .col-md-12 > img {
    max-width: 280px;
}

.box {
    /*opacity: 0;*/ /* opacityを指定すると副作用のあるブラウザがあるため */
    -webkit-opacity: 0;
	float: none; /* safari problem */ 
	/*
	margin-left: auto;
	margin-right: auto;
	*/
	margin: 0 0;
	padding: 0 0;
	width: auto; /* IE8用にauto */
	height: 310px; 
	overflow: hidden;
	/*display: inline-block;*/
	background-color: black;
	z-index: 10; /* topmost */
	
}
.box h2 { 
	padding: 20px 10px 10px 10px;
	font-family: "Open Sans";
	font-size: 36px;
	font-weight: normal;
	font-weight: 400;
	color: white; 
	text-align: left;
	
	/* 競合のため追加 */
	border-bottom:none;
	
	
}
.box p {
	color: white;
	text-align: left;
	font-size: 14px;
    line-height: 1.75em;
    margin-bottom: 10px;
}


.box > .base, .box > .base1 {
	height: 310px;
	/*display: table-cell;*/
	text-align: center;
	
	-webkit-transition: top 0.4s ease-in-out;
	-webkit-transition: background-color 0.4s ease-in-out;
	-webkit-transition: opacity 0.4s ease-in-out;
	-moz-transition: top 0.4s ease-in-out;
	-moz-transition: background-color 0.4s ease-in-out;
	-moz-transition: opacity 0.4s ease-in-out;
	-ms-transition: top 0.4s ease-in-out;
	-ms-transition: background-color 0.4s ease-in-out;
	-ms-transition: opacity 0.4s ease-in-out;
	-o-transition: top 0.4s ease-in-out;
	-o-transition: background-color 0.4s ease-in-out;
	-o-transition: opacity 0.4s ease-in-out;
	transition: top 0.4s ease-in-out;
	transition: background-color 0.4s ease-in-out;
	transition: opacity 0.4s ease-in-out;

	
}
.box > .base1 {
    display: table-cell;
    width: 100%;
    height: 220px;
    overflow: hidden;
}
.box > .base2 {
    display: block;
    width: 100%;
    height:90px;
    background-color:white;
    text-align: center;
    padding: 20px 10px;
	
	-webkit-transition: top 0.4s ease-in-out;
	-webkit-transition: background-color 0.4s ease-in-out;
	-webkit-transition: opacity 0.4s ease-in-out;
    -moz-transition: top 0.4s ease-in-out;
	-moz-transition: background-color 0.4s ease-in-out;
	-moz-transition: opacity 0.4s ease-in-out;
    -ms-transition: top 0.4s ease-in-out;
	-ms-transition: background-color 0.4s ease-in-out;
	-ms-transition: opacity 0.4s ease-in-out;
    -o-transition: top 0.4s ease-in-out;
	-o-transition: background-color 0.4s ease-in-out;
	-o-transition: opacity 0.4s ease-in-out;
	transition: top 0.4s ease-in-out;
	transition: background-color 0.4s ease-in-out;
	transition: opacity 0.4s ease-in-out;
}


.box > .hover {
	width: 100%;
	position:relative;
	top: 0px;
	background-color: #666666; 
	background-color: rgba(50,50,50,0.5); 

	-webkit-transition: top 0.4s ease-in-out;
    -moz-transition: top 0.4s ease-in-out;
    -ms-transition: top 0.4s ease-in-out;
    -o-transition: top 0.4s ease-in-out;
	transition: top 0.4s ease-in-out;
}
.hover > .inner {
	/*width: 310px;*/
	height: 310px;	
	color: white;
	margin: 0;
	padding: 0px 0px;
    /*display: inline-block;*/
	vertical-align: middle;
	text-align: center;
}
/* hover effect */
.box:hover .base, .box:hover .base1, .box:hover .base2 {
	opacity: 0.2;
	filter: alpha(opacity=20);
}
.box:hover .hover {
	top: -310px;
	cursor: pointer;
}
.hover > .inner > h1 {
	text-align: center;
}
a.link { 
	color:white !important; 
	text-decoration: none;
}

/* box bgcolor */
.box1 { background-color: #53918C; background-color: rgba(83,145,140,1); }
.box2 { background-color: #9D467C; background-color: rgba(157,70,124,1); }
.box3 { background-color: #B77F51; background-color: rgba(183,127,81,1); }
.box4 { background-color: #547293; background-color: rgba(84,114,147,1); }
.box5 { background-color: #607276; background-color: rgba(96,114,118,1); }
.box6 { background-color: #595466; background-color: rgba(89,84,102,1); }


/* 追加 */

.container.marketing .row .col-lg-4 .box.box3 .hover .inner .base2 {
	padding: 5px;
	background-color:#FFF;
	height: 90px;
	opacity:1;
    filter: alpha(opacity=100);        /* ie lt 8 */
    -ms-filter: "alpha(opacity=100)";  /* ie 8 */
}

.container.marketing .row .col-lg-4 .box.box3 .hover .inner .base3 {
	padding: 10px;
}

.container.marketing .row .col-lg-4 .box.box6 .hover .inner .base2 {
	padding: 22px 10px 20px 10px;
	background-color:#FFF;
	height: 90px;
	opacity:1;
    filter: alpha(opacity=100);        /* ie lt 8 */
    -ms-filter: "alpha(opacity=100)";  /* ie 8 */
}
.container.marketing .row .col-lg-4 .box.box6 .base3 {
	padding: 10px;
}

h1.intitle {
	font-size: 24px;
	padding: 16px 10px 6px 10px;
	line-height: 1.3em;
	
	/* 競合のため追加 */
	border-bottom:none;
}
#mgmenu1 {
	z-index:50;
}
.mgmenu_tabs_panels p {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.8em;
}
.mgmenu_tabs_panels p a, .mgmenu_tabs_panels h4 a {
    text-decoration: underline;
}
/* english right label */
.dropdown_flyout .comp_r {
    display: inline-block;
    float: right;
}

/* mgmenu.css 上書き */
.mgmenu_tabs .mgmenu_tabs_nav {
	width:184px;
}
.mgmenu_tabs .mgmenu_tabs_panels {

	box-shadow:none;
}

/* リンクアイコン */

.box a {
	color:#FFF;
	text-align:center;
	display:block;
}
.circle-effect a {
	position: relative;
	display: inline-block;
	margin: 10px 10px;
	text-decoration: none;
}

.circle-effect a::before, .circle-effect a::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 80px;
	height: 80px;
	border: 2px solid rgba(255,255,255,1);
	border-radius: 50%;
	content: '';
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s; 
	-webkit-transform: translateX(-50%) translateY(-50%) scale(0.2);
	-moz-transform: translateX(-50%) translateY(-50%) scale(0.2);
	transform: translateX(-50%) translateY(-50%) scale(0.2); 
}

.circle-effect a:hover::before, .circle-effect a:hover::after,
.circle-effect a:focus::before, .circle-effect a:focus::after {
	opacity: 1;
	-webkit-transform: translateX(-50%) translateY(-50%) scale(1);
	-moz-transform: translateX(-50%) translateY(-50%) scale(1);
	transform: translateX(-50%) translateY(-50%) scale(1);
}

section {
	background:#FFF;
	padding:10px}

.box .logo {
	margin-bottom:5px;
	margin-top: 0px;
	max-height: 34px;
}
.box a.glow {
  display: inline-block;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.box a.glow:hover, .box a.glow:focus, .box a.glow:active {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}


/* pc screen 
@media (min-width: 984px) {
    .box2, .box5 { margin: 0 1em 1em 1em }
}
*/
/* small screen */
@media screen and (max-width: 360px) {
    .carousel-inner > .item > .container > .carousel-caption > .catchtext {
        margin-top: 90px;
    }
}
/* tablet screen */
@media screen and (min-width: 767px) and (max-width: 984px) {
	.container.marketing { width:100%;}
    #mgmenu1 { width: 710px }
	.mgmenu > li.right_item {
	    float:left;
    	margin-left:10px;
    }
}
/* 767px以下用（タブレット／スマートフォン用）の記述 */
@media screen and (max-width: 767px) {
	.container.marketing { width:100%;}
    .mgmenu_tabs .mgmenu_tabs_nav {
	    width:100%;
    }
	.navbar-brand {
		padding-left:0;
		padding-right:0;}

}
/*
@media screen and (min-width: 568px) and  (max-width: 767px) {
.box .img-smalldevice {
	width:60%;
}
*/
