/*

Theme Name: X - Child Theme
Theme URI: http://theme.co/x/
Author: Themeco
Author URI: http://theme.co/
Description: Make all of your modifications to X in this child theme.
Version: 1.0.0
Template: x

*/

body.x-child-theme-active {
	background: #222222;
}

a:focus, select:focus, input[type="file"]:focus, input[type="radio"]:focus, input[type="submit"]:focus, input[type="checkbox"]:focus {
	outline: none!important;
}

.x-logobar {
	text-align: left;
}

.masthead-stacked .desktop .x-nav {
  margin-right: 0;
}

#top h1,
#top h2,
#top h3,
.h-landmark, .entry-title.h-landmark {
	letter-spacing: 0;
}

/* recruit under construction */
/*
.menu-item-1445,
.menu-item-1452 {
	opacity: 0.4;
	pointer-events: none;
	cursor: default;
}
.x-navbar .desktop .x-nav .menu-item-1445 > a > span::after {
	content: '';
}
.menu-item-1445 .x-sub-toggle {
	display: none;
}
*/

/* make page title as wide as possible */
.x-landmark {
	padding-right: 1em;
}

.more-link {
	text-decoration: none;
}

.menu-item > a {
	color: #757575;
}
.current-page-ancestor > a,
.current-menu-item > a,
.x-navbar .desktop .x-nav > li.current-page-ancestor > a {
	color: black;
}

.p-meta span:first-child {
	display: none;
}

/* change first title to have no top margin */
.x-content-band:first-child .wpb_row:first-child .x-column:first-child h3:first-child {
	margin-top: 0;
}

div.site *::selection {
	color: black;
	background: rgba(255,0,0,0.3);
}
div.site *::-moz-selection {
	color: black;
	background: rgba(255,0,0,0.3);
}

div.site span, 
div.site applet, 
div.site object, 
div.site iframe, 
div.site h3, 
div.site h5, 
div.site h6, 
div.site p, 
div.site blockquote, 
div.site pre, 
div.site a,
div.site .wpb_raw_html,
div.site .tablepress td {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
	font-weight: 500!important;
}
div.site h4,
div.site h4 span {
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, sans-serif!important;
	font-weight: 500!important;
	/*margin-top: 1.75em;*/
	margin-top: 0px;
}
.x-content-band:first-child .wpb_row:first-child .x-column:first-child h3.tb-boxtitle:first-child,
div.site h3.tb-boxtitle {
	margin-top: 12px;
}

.x-container.offset {
	margin: 2.75em auto 0px;
}
.site {
  box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
}

.desktop .menu-item-538 a,
.desktop .menu-item-2327 a {
	padding-top: 15px!important;
}
.menu-item-538 a span,
.menu-item-2327 a span {
	background-color: black;
	color: white;
	padding-top: 12px!important;
	padding-bottom: 12px !important;
	padding-left: 19px!important;
	padding-right: 19px!important;
	transition: all 0.3s cubic-bezier(.25,.8,.25,1);
	border: 1px solid black;
}
.x-navbar .desktop .x-nav .menu-item-538 > a:hover > span,
.x-navbar .desktop .x-nav .menu-item-2327 > a:hover > span {
	box-shadow: none;
	background-color: white;
	color: black!important;
}

a.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat,
a.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat:hover,
a.vc_btn3.vc_btn3-color-black,
a.vc_btn3.vc_btn3-color-black:hover,
button.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat,
button.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat:hover,
button.vc_btn3.vc_btn3-color-black,
button.vc_btn3.vc_btn3-color-black:hover {
	background-color: black;
	line-height: 22px;
}
.recruit-button.disabled button.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat,
.recruit-button.disabled button.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat:hover,
.recruit-button.disabled button.vc_btn3.vc_btn3-color-black,
.recruit-button.disabled button.vc_btn3.vc_btn3-color-black:hover {
	opacity: .4;
	pointer-events: none;
	cursor: pointer;
}
.recruit-button.disabled.vc_btn3-container.vc_btn3-inline {
	display: block;
}
.recruit-button.disabled:after {
	margin-left: 2em;
	content: '2019年度の採用は終了のため、現在、募集は行っておりません';
}
[lang="en-US"] .recruit-button.disabled:after {
	margin-left: 2em;
	content: 'Recruitment for FY2019 has been completed and we are not recruiting at the moment.';
}

/* needs to be organized */
.tb-center-inner {
  display: table;
	margin: 16px auto;
	max-width: 900px;
	padding-right: 50px;
}
.tb-top-flag-title,
.tb-top-flag-caption {
	vertical-align: middle;
	display: table-cell;
}
.tb-top-flag-title {
	padding-top: 5px;
	width: 260px;
	text-align: right;
}
.tb-top-flag-title h3 {
	margin: 0;
}
.tb-top-flag-caption {
	padding-left: 60px;
}
.tb-white .tb-top-flag-title h3,
.tb-white .tb-top-flag-caption {
	color: white;
}
@media (max-width: 767px) {
	.tb-center-inner {
		display: block;
		padding: 0;
	}
	.tb-top-flag-title,
	.tb-top-flag-caption {
		display: block;
		width: auto;
		text-align: center;
		padding: 0;
	}
}

/* sub-menu drop shadow*/
.desktop .sub-menu {
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
	/*box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);*/
}

/* making black default buttons black*/
a.vc_btn3.vc_btn3-color-black.vc_btn3-style-outline {
	background-color: transparent!important;
	border-color: black;
	color: black!important;
}
a.vc_btn3.vc_btn3-color-black.vc_btn3-style-outline:hover {
	background-color: black!important;
	color: white!important;
}

/*coordinating top bottom padding of large buttons*/
.tb-top-button .vc_btn3.vc_btn3-size-lg {
	padding-top: 10px;
	padding-bottom: 10px;
}

/*fixing hover colors for black and white buttons*/
a.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat {
	border: 1px solid black;
}
a.vc_btn3.vc_btn3-color-black.vc_btn3-style-flat:hover {
  background: white;
	color: black;
}
a.vc_btn3.vc_btn3-color-white.vc_btn3-style-outline:hover {
	color: black;
}

/* footer */
footer.x-colophon.top,
footer.x-colophon.top h4.h-widget,
footer.x-colophon.top ul,
footer.x-colophon.top li,
footer.x-colophon.top li a {
	background-color: #003470;
	color: white;
	border-top: none;
	border-bottom: none;
}
footer.x-colophon.top li {
	padding: 0;
}
footer.x-colophon.top li a {
	display: block;
}
footer.x-colophon.top li a:hover {
	color: #449dd1;
}
footer.x-colophon.top span.post-date {
	color: #6685A9;
}
footer.x-colophon.top .widget_nav_menu a {
	margin-top: 0;
	margin-bottom: 0;
}

@media (max-width: 767px) {
	#nav_menu-6.widget_nav_menu {
		margin-top: 0px;
	}
}
@media (min-width: 768px) {
	#nav_menu-6.widget_nav_menu {
		margin-top: 42px;
	}
}

/* line */
hr {
	border-width: 1px;
}
hr.tb-shortline {
	border-top: 1px solid #7f7f7f;
	margin: 10px auto 1.5em;
	display: block;
	width: 40px;
}

/* enkaku */
.x-content-band h2 {
	margin: 0;
	font-weight: 400;
}
.x-content-band .x-3-4 {
	padding-top: 10px;
}

div.tb-soshikizu-box {
	background-color: white;
	border: 1px solid #838383;
	border-width: 1px!important;
}

.collapseomatic_content {
	margin-left: 0;
}

/* footer */
footer.x-colophon.top {
	margin-top: -1px;
	padding: 38px 0px 38px;
}
footer.x-colophon.bottom {
	background-color: #222222;
	padding: 14px 0px;
}
footer.x-colophon.bottom .x-colophon-content {
	margin: 0;
	text-align: left;
}
.tb-footer-logo {
	max-width: 100%;
	display: inline-block;
	margin-right: 28px;
}
.tb-footer-info {
	max-width: 300px;
	display: inline-block;
	color: #757575;
}
.tb-footer-copyright {
	text-align: center;
}
@media (max-width: 767px) {
	.tb-footer-copyright {
		margin-top: 0.4em;
	}
}

/* optional CSS for bottom site map */
/*
.x-colophon.top .widget_nav_menu a {
	background: rgba(0,0,0,0.2);
	margin-bottom: 1px!important;
	padding-left: 4px;
	padding-top: 2px;
}
.x-colophon.top .widget_nav_menu a:hover {
	background: rgba(0,0,0,0.3);
}
.x-colophon.top .widget_nav_menu li {
	background: rgba(0,0,0,0.1);
}
*/

/* remove gmap margin */
.x-google-map {
	margin-bottom: 0;
}

.x-navbar .x-brand {
	max-width: 75%;
}

a.tb-gmaplink {
	font-size: 12px;
	padding: 2px 6px;
	color: #003470;
	border: 1px solid transparent;
	border-top-width: 0px;
	line-height: normal;
}
a.tb-gmaplink:hover {
	background-color: #003470;
	color: white;
}
a.tb-gmaplink:focus {
	border-color: #003470;
}

@media (max-width: 767px) {
	a.tb-gmaplink {
		border-top-width: 0px!important;
		border: 1px solid #003470;
		padding: 14px;
	}
	.x-google-map-inner {
		padding-bottom: 16em!important;
	}
}

/*shirase page navigation*/
.x-pagination ul {
	background-color: #DDDDDD;
}
.x-pagination a, .x-pagination span {
	color: #757575;
}

/*recruit buttons*/
.recruit-button{
	margin-left: 2em
}