/*
 Theme Name:   Twenty Twenty Child
 Theme URI:    https://diviextended.com/
 Description:  A child theme of Twenty Twenty WordPress theme.
 Author:       Elicus Technologies
 Author URI:   https://elicus.com
 Template:     twentytwenty
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

@import url("../twentytwenty/style.css");

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

* {
    font-feature-settings: "palt";
}

body, body input, body textarea, body button, body .button, body .faux-button, body .wp-block-button__link, body .wp-block-file__button, body .has-drop-cap:not(:focus)::first-letter, body .has-drop-cap:not(:focus)::first-letter, body .entry-content .wp-block-archives, body .entry-content .wp-block-categories, body .entry-content .wp-block-cover-image, body .entry-content .wp-block-latest-comments, body .entry-content .wp-block-latest-posts, body .entry-content .wp-block-pullquote, body .entry-content .wp-block-quote.is-large, body .entry-content .wp-block-quote.is-style-large, body .entry-content .wp-block-archives *, body .entry-content .wp-block-categories *, body .entry-content .wp-block-latest-posts *, body .entry-content .wp-block-latest-comments *, body .entry-content p, body .entry-content ol, body .entry-content ul, body .entry-content dl, body .entry-content dt, body .entry-content cite, body .entry-content figcaption, body .entry-content .wp-caption-text, body .comment-content p, body .comment-content ol, body .comment-content ul, body .comment-content dl, body .comment-content dt, body .comment-content cite, body .comment-content figcaption, body .comment-content .wp-caption-text, body .widget_text p, body .widget_text ol, body .widget_text ul, body .widget_text dl, body .widget_text dt, body .widget-content .rssSummary, body .widget-content cite, body .widget-content figcaption, body .widget-content .wp-caption-text,body span,body h1,body h2,body h3,body h4,body h5,body h6,body table ,.entry-content,h2.jp-midashi,#post-grid-133 .title a,.careers-wrap h2.careers-head{
	font-family:'Roboto', 'Noto Sans JP', sans-serif;
	transition: .3s;
}

h1,h2,h3,h4,h5,h6,.faux-heading {
	letter-spacing: 0;
}

p,blockquote,address,big,cite,code,em,font,img,small,strike,sub,sup,li,ol,ul,fieldset,form,label,legend,button,table,caption,tr,th,td {
	font-size: 16px;
}

h3 {
	font-size: 22px;
}
h4 {
	font-size:16px;
	font-weight: 700;
}

body > div {
    background-color: #000000;
    color: #ffffff;
}

/*eng font*/
.Eng-font,.footer-widgets,footer#site-footer,#my_sidebar_widget h2,
h2.general-head,h1.archive-title,nav.primary-menu-wrapper ul.primary-menu li.menu-item,
.product-view-link a,.see-more a,.product-item-col h2 ,#post-grid-133 .layer-content,
.column_r,.column_r a,.side-spec *,#my_sidebar_widget span.post-date,
.entry-categories a,.prod-name,body .entry-content p.his-year,.entry-content .company-officer.wp-block-columns h3+p,
h2.widget-title,.menu-modal nav *,body .entry-content .side-spec p,
.mainBtn a, .mainBtn input,table.contact-form input
{
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0!important;
	font-weight: 700;
}

h2.jp-midashi{
	font-size:28px;
	font-weight: 500;
}

:root .has-primary-background-color {
    background-color: initial!important;
}

body a {
    color: #3D88DD;
    text-decoration: none!important;
	transition: .3s;
}

body a:hover {
	opacity: 0.7;
	text-decoration: none;
}

body .color-accent,body .color-accent-hover:hover,body .color-accent-hover:focus,body :root .has-accent-color,body.has-drop-cap:not(:focus):first-letter,body .wp-block-button.is-style-outline,body a {
    color: #3D88DD;
}

body:not(.overlay-header) .primary-menu > li > a, body:not(.overlay-header) .primary-menu > li > .icon, .modal-menu a, .footer-menu a, .footer-widgets a, #site-footer .wp-block-button.is-style-outline, .wp-block-pullquote:before, .singular:not(.overlay-header) .entry-header a, .header-footer-group .color-accent, .header-footer-group .color-accent-hover:hover {
    color: #ffffff!important;
}

.section-inner,
.alignwide,
.breadcrumb-inner,
[class*="__inner-container"] > .alignwide,
.entry-content > .alignwide,
.product-wrap [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
	max-width: 1000px;
	margin: 0 auto;
}

.semiwide,.semiwide > *,
[class*="__inner-container"] > .semiwide:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide),
body.privacy-policy .semiwide [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
	max-width: 690px!important;
}

body:not(.home) #site-content{
	padding-top: 165px;
}

body img{width: 100%;}

.entry-content p, .entry-content li {
    line-height: 1.66;
}


/*header*/
.header-titles .site-title{
	margin-top: 0.5rem;
	margin-left: 1.3rem;
}

/*breadcrumb*/
#breadcrumb{
	position: absolute;
    top: 82px;
	z-index: 5;
    display: block;
	background: rgba(38,37,37,0.7);
	width: 100%;
	padding: 0.2rem 0 0.5rem;
}

#breadcrumb ul{
	text-align: right;
	margin: 0
}

#breadcrumb li{
	display: inline-block;
	margin: 0;
	font-size: 12px;
}
#breadcrumb li a{
	color: #fff;
}

#breadcrumb li:not(:last-of-type)::after{
	content: '>';
	margin:0 1rem;
}

/*footer*/
.footer-nav-widgets-wrapper,.footer-widgets-outer-wrapper{
	margin: 0!important;
	border: none;
}

.footer-widgets-outer-wrapper{
	padding:7rem 0;
}

.footer-widgets .widget{
	margin-top: 3rem;
}

.footer-widgets a:hover{
text-decoration:none;
}

.footer-widgets.column-one{
	width: 25%;
}

.column-one .image{
	width: 100%;
}

.footer-widgets.column-one .widget_custom_html p{
	font-weight: 400;
}

.footer-widgets.column-two{
	display: flex;
    margin-left: 8rem;
	flex-grow: 1;
}

.footer-widgets.column-two .widget{
    margin: 0;
	width: 100%;
}

.footer-widgets .widget .widget-title{
	font-size:22px;
    letter-spacing: 0;
	margin-top: 1.7rem;
}

.footer-widgets .widget_nav_menu li{
	margin: 1rem 0;
}

.footer-widgets .widget_nav_menu li a{
	font-weight: 400;
}


div[class*="menu-footer-menu-information-"] > ul{
		display: flex;
    	flex-wrap: wrap;
		align-items: center;
	}
	div[class*="menu-footer-menu-information-"] li:first-of-type{
		flex-grow: 1;
	}
	div[class*="menu-footer-menu-information-"] li:first-of-type a{
		width: 100%;
		display: block;
		text-align: center;
	}
	div[class*="menu-footer-menu-information-"] li:last-of-type{
		display: block;
		width: 100%;
	}


div[class*="menu-footer-menu-information-"] li:first-of-type,
div[class*="menu-footer-menu-information-"] li:nth-of-type(2),
div[class*="menu-footer-menu-information-"] li:nth-of-type(3){
	display: inline-block;
}

div[class*="menu-footer-menu-information-"] li:nth-of-type(2),
div[class*="menu-footer-menu-information-"] li:nth-of-type(3){
	vertical-align: bottom;
	font-size: 34px;
	font-weight: 500;
	margin: 0 0 -1px 15px;
}

div[class*="menu-footer-menu-information-"] li:first-of-type a{
	padding: 0.5rem 4rem;
    border: 1px solid #fff;
    font-size: 14px;
    border-radius: 5px;
	font-weight: 700;
}


footer#site-footer{
	padding:1rem;
}

#site-footer .footer-credits {
	width: 100%;
    text-align: center;
    display: inline-block;
}

#site-footer .to-the-top{display: none;}

.footer-copyright {
    font-weight: 500;
	font-size:12px;
}
/*hr*/
.entry-content hr, hr.styled-separator{
	background:#fff!important;
	margin: 0;
}
.entry-content hr::before, .entry-content hr::after, hr.styled-separator::before, hr.styled-separator::after{
	content: none;
}


/*news*/
body.single-post.custom-background,
body.archive.custom-background,
.singular .entry-header,
.archive-header,
.single-post .entry-title a,
.archive .entry-title a{
	background-color: #fff!important;
	color: #000!important;
}
.single-post .entry-title a,
.archive .entry-title a{
	background-color: transparent!important;
	font-weight: 400;
}

body.single-post #site-content,
body.archive #site-content{
	max-width: 880px;
	margin: 0 auto;
}

body.single-post #site-content .section-inner.medium,
body.archive #site-content .section-inner.medium,
body.single-post #site-content .featured-media img,
body.archive #site-content .featured-media img{
	width: 100%;
}

body.single-post #site-content > .site-content-inner,
body.archive #site-content > .site-content-inner{
	width: 65%;
	float: left;
	padding: 0;
	position: relative;
}

body.single-post #site-content > aside,
body.archive #site-content > aside{
	width: 30%;
	display: inline-block;
	min-width: 300px;
    float: right;
}

body.single-post #site-header,
body.archive #site-header{
	background: #000;
}

.featured-media{margin: 0;}

.featured-media-inner.section-inner.medium{
	min-height: 220px;
    position: relative;
}


body.archive #site-content .site-content-inner article:not(:first-of-type) .featured-media-inner.section-inner.medium img{
min-height: 100%;
    position: absolute;
    object-fit: cover;
    font-family: 'object-fit: cover;'!important;
}






/*sidebar*/
#my_sidebar_widget ul,
#my_sidebar_widget > li{
	list-style: none;
	margin: 0;
}
#my_sidebar_widget h2{
	font-size: 16px;
	border-bottom: 1px solid;
	padding-bottom: 5px;
	margin: 0 0 46px;
}

#my_sidebar_widget .side-item{
	display: flex;
	flex-wrap: wrap;
}

#my_sidebar_widget .side-item > a{
	width: 50%;
	display: inline-block;
	text-decoration: none;
}
#my_sidebar_widget .side-title span{
	padding: 0 5px;
/*
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
	overflow: hidden;
*/
	font-size: 14px;
    line-height: 2rem;
	font-weight: 500;
	color: #000;
}

#my_sidebar_widget .side-title span {/*基本設定。設定した高さより長くなった場合に文末以降が省略される*/
  line-height: 1.4;
  max-height: 5.8em;
  overflow: hidden;
  position: relative;
  text-overflow: ellipsis;
  margin:auto;
	display: block;
}
#my_sidebar_widget .side-title span::before, #my_sidebar_widget .side-title span::after {/*IE用。疑似要素に除外設定*/
  content: '...';
  line-height: 1;
  position: absolute;
  right: 0;
  top: 4em;
  -ms-wrap-flow: start;
}
#my_sidebar_widget .side-title span::after {
  background: currentColor;
  color: white;
  top: auto;
}
@supports (-webkit-line-clamp: 4) {/*モダンブラウザ用*/
  #my_sidebar_widget .side-title span {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 4;
	max-height: none;
  }
  #my_sidebar_widget .side-title span::before, #my_sidebar_widget .side-title span::after {
    content: normal;
  }
}



#my_sidebar_widget span.post-date{
	font-size:11px;
}



/*single*/
.single-post .featured-media:before{
	display: none;
}

.single-post .entry-header{
	padding: 20px 0;
	text-align: left;
	border-bottom: 1px solid;
}

.single-post:not(.overlay-header) .entry-header a,
.single-post .post-date,.single-post .entry-categories{
	color: #7D7D7D!important;
	margin-bottom: 0;
	font-weight: 500;
	border: none;
	font-size: 16px;
	display: inline-block;
}

body.single-post h2.entry-title{font-size:24px;}

.single-post .featured-media-inner{
	left: 0;
	width:100%;
}

.single-post .post-inner{
	padding:20px 0 50px;
}

.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
	width: 100%;
}

/*archive*/
.archive-header{padding-bottom: 0;}
.archive-title{text-align: left;}
.archive .post-inner,.reduced-spacing header.archive-header{padding: 0}
.archive .color-accent{display: none;}

body.archive #site-content .site-content-inner{
	display: flex;
	flex-wrap: wrap;
}

body.archive #site-content .site-content-inner article{
	margin-bottom: 40px;
	position: relative;
}

body.archive #site-content .site-content-inner article:not(:first-of-type){
	width: 47.5%;
	display: inline-flex;
    flex-direction: column;
}

body.archive #site-content .site-content-inner article:not(:first-of-type) .see-more{
	display: none;
}

body.archive #site-content .site-content-inner article:nth-of-type(odd):not(:first-of-type){
	margin-left: 5%;
}

@media all and (-ms-high-contrast: none) {
	  body.archive #site-content .site-content-inner{
		display: block;
	}

	body.archive #site-content .site-content-inner article:not(:first-of-type){
		width: 47%;
		display: inline-block;
	}

	body.archive #site-content .site-content-inner article:not(:first-of-type) .see-more{
		display: none;
	}

	body.archive #site-content .site-content-inner article:nth-of-type(odd):not(:first-of-type){
		margin-left: 4%;
	}
}



body.archive .site-content-inner article:first-of-type .entry-header{
	position: absolute;
	height: auto;
}

body.archive .entry-header{
    display: block;
    bottom: 0;
    background: rgba(238,238,238,0.9);
	text-align: left;
    padding: 15px;
	position: relative;
	height: 100%;
	width: 100%;
}

body.archive .entry-header::after{
	content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 12px 12px;
    border-color: transparent transparent #ffffff transparent;
    position: absolute;
    bottom: 0;
    right: 0;
}

body.archive .entry-header > .entry-header-inner > *:not(.entry-title):not(.see-more){
	display: inline-block;
	margin: 0;
	font-size:14px!important;
}

body.archive .entry-categories-inner{
	margin: 0!important;
}

body.archive .entry-categories-inner a{
	color: #000;
	border: none;
	line-height: 1;
	margin: 0;
	font-size:14px;
}

body.archive h2.entry-title{
	font-size:16px;
	margin:15px 0;
}
body.archive h2.entry-titlea{
	text-decoration: none;
}

body.archive .see-more{margin: 0;}
body.archive .see-more a{color: #000;}


/*home*/
.fv-Elm {
    height: 100vh;
    display: flex;
    align-items: center;
    background-image: url(https://gitai.routine-control.net/wp-content/uploads/2020/03/fv-bg01.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.fv-Elm > .wp-block-group__inner-container {
    width: 100%;
}

.fv-main-head {
    font-size: 133px;
    min-width: 100%!important;
	font-weight: 400;
}

.fv-test iframe {
    max-width: initial;
    height: 100vh!important;
    width: 100%!important;
}

.fv-test {
    position: absolute;
    height: 100vh;
}



h2.general-head:before,h1.archive-title::before {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 15px;
    background-color: #ffffff;
    bottom: -24px;
    margin: auto;
    left: 4px;
}
h1.archive-title::before{background-color: #000;}

h2.general-head,h1.archive-title {
    font-size: 34px;
    position: relative;
    margin-bottom: 35px;
}
h2.has-text-align-center.general-head.for-center:not(.for-youtube-icon) {
    margin-bottom: -10px!important;
}


.page header.entry-header {
    display: none;
}

#site-header h1 {
    margin: 0;
}

#site-header .header-inner {
    height: 82px;
}

body #site-header {
    position: fixed;
    z-index: 9999;
    width: 100%;
    background-color: rgba(0, 0, 0, 0);
	transition: .3s;
}


.fv-sec {
    padding: 0!important;
}

p.has-text-color.has-primary-color {
    display: none;
}

#scroll-text:hover {
    opacity: 0.7!important;
}

#scroll-text {
    cursor: pointer;
    transition: .3s;
}


nav.primary-menu-wrapper ul.primary-menu li.menu-item-has-children a {
    padding-right: 0;
}

nav.primary-menu-wrapper ul.primary-menu li.menu-item span.icon {
    display: none;
}

nav.primary-menu-wrapper ul.primary-menu li.menu-item {
	font-size: 16px;
    margin: 0.8rem 0 0 2.4rem;
	text-decoration: none;
}

nav.primary-menu-wrapper ul.primary-menu li.menu-item a:hover {
    text-decoration: none;
    opacity: 1;
}

nav.primary-menu-wrapper ul.primary-menu li.menu-item a {
    position: relative;
}

nav.primary-menu-wrapper ul.primary-menu li.menu-item a:hover:before {
    width: 100%;
}

nav.primary-menu-wrapper ul.primary-menu li.current-menu-item a:before,
nav.primary-menu-wrapper ul.primary-menu li.menu-item a:before {
    position: absolute;
    width: 0%;
    height: 2px;
    margin: auto;
    background: #ffffff;
    content: "";
    bottom: -28px;
    top: 0;
    transition: .3s;
    left: 0;
}

nav.primary-menu-wrapper ul.primary-menu li.wpml-ls-current-language a:before,
nav.primary-menu-wrapper ul.primary-menu li.current-menu-item a:before {
    width: 100%;
}

nav.primary-menu-wrapper ul.primary-menu li.current-menu-item a {
    text-decoration: none;
}

.primary-menu ul::before, .primary-menu ul::after{
	bottom: 99%;
}

#menu-item-wpml-ls-3-ja {
    margin: 0.8rem 0 0 7.4rem;
}

.menu-item-wpml-ls-3-ja a:after {
    content: "JA";
}

.menu-item-wpml-ls-3-en a:after {
    content: "EN";
}

.sub-menu .menu-item{
	margin: 0;
}

.sub-menu .menu-item a{
	padding-left: 0;
}

.primary-menu > li.menu-item-has-children > a{
	margin-right: 0;
}

.toggle-text{display: none;}

.vision-sec {
    min-height: 90vh;
    display: flex;
    align-items: center;
    margin: 0!important;
	padding: 0px 0 50px;
	height: 100%;
}

p.vision-desc {
    font-size: 34px;
}

.add-arrow-right a:after {
    content: "\f054";
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    margin-left: 0.4em;
    font-size: 100%;
}

.product-view-link a,
.see-more a {
    font-size: 16px;
    color: #ffffff;
}

.for-center:before {
    left: 0;
    right: 0;
}

.wp-block-columns.alignfull.product-item-col{
	margin-top: 60px;
}

.product-item-col .wp-block-cover {
    padding: 35% 0px 13% 0px;
}

.product-item-col .wp-block-cover.has-background-dim:before {
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0.5) 50%, rgba(0,0,0,0) 100%);
    opacity: 1!important;
	transition: .3s;
}
.product-item-col .wp-block-cover.has-background-dim:hover:before{
	opacity: 0.5!important;
}

.product-item-col h2 {
    font-weight: 600;
    font-size: 60px;
    margin-bottom: 0px!important;
}

.product-item-col > .wp-block-column {
    align-self: stretch;
}
.product-item-col > .wp-block-column > div{
	max-width: none!important;
}

.product-item-col p {
    font-size: 14px;
}

.product-item-col p:not(.product-view-link){
    width: 60%!important;
	font-weight: 400!important;
}

.product-view-link a {
    margin-bottom: 54px;
    display: block;
}


.item-g1,
.item-s1,
.item-arm {
    position: relative;
	transition: .3s;
}

.item-g1:hover {transform: translate(0px, -10px);}
.item-s1:hover {transform: translate(0px, -10px);}
.item-arm:hover {transform: translate(0px, -10px);}

.item-g1:hover > div:before,
.item-s1:hover > div:before,
.item-arm:hover > div:before {
	opacity: .7;
}

.item-g1 {
    top: -80px;
}

.item-s1 {
    top: -50px;
}

.item-arm {
    top: -20px;
}

.product-item-col .wp-block-column:not(:first-child) {
    margin-left: 5px;
}

#post-grid-133 .grid-items {
    display: flex;
    justify-content: center;
}
#post-grid-133 .item {
    width: 33.33%;
}
#post-grid-133 .item::after{
	content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 10px 10px;
    border-color: transparent transparent #000000 transparent;
    position: absolute;
    bottom: 0;
    right: 0;

}

#post-grid-133 .grid-wrap {
    text-align: left;
    padding: 10px;
}

#post-grid-133 .post_date {
    color: #000000;
    font-size: 14px!important;
    display: inline-block!important;
	padding: 0!important;
	font-weight: 700;
}

#post-grid-133 .categories {
    display: inline-block;
}
#post-grid-133 .categories a {
    color: #000000;
    font-size: 14px;
	padding: 0px 10px!important;
	font-weight: 700;
}
#post-grid-133 .title a{
    color: #000000;
    font-size: 14px!important;
	font-weight: 400;
	display: inline-block;
}
#post-grid-133 .thumb_link{
    min-height: 220px;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
}
#post-grid-133 .item .thumb_link img {
    min-height: 100%;
    position: absolute;
    object-fit: cover;
	font-family: 'object-fit: cover;'!important;
}

#post-grid-133 {
    max-width: 100%!important;
}

body .home-video-sec .wp-block-columns.alignfull, .alignfull:not(.has-background) .wp-block-columns {
    padding: 0;
}

body .home-video-sec figure.alignfull {
    margin-bottom: 0;
    margin-top: 0;
}

body .home-video-sec figure.alignfull iframe {
    margin: 0!important;
}

body .home-video-sec .wp-block-column:not(:first-child) {
    margin-left: 0;
}

body .home-video-sec .wp-block-column {
    flex-basis: 50%;
}

body .home-video-sec {
    margin-bottom: -1px!important;
}

:root .has-primary-background-color.yt-ch-sec {
    background-color: #ffffff!important;
    padding: 4rem 6rem!important;
}

.news-cover {
    padding: 6rem 0rem 6rem 0rem;
    background-position: bottom;
}

.mainBtn a,.mainBtn input{
    font-weight: 600;
    color: #ffffff;
    font-size: 18px;
    width: 240px;
    border: solid 1px #ffffff;
    display: block;
    text-align: center;
    padding: 13px 0px;
    border-radius: 5px;
	margin-top: 40px;
}
.mainBtn input[type="submit"]{
    width: 100%;
    background: #000;
    color: #fff;
	margin: 0;
	text-decoration: none;
}
body .entry-content > .alignfull{margin: 0 auto;}
body .entry-content > .alignfull.careers-sec {
    margin: 0;
    padding: 10rem 0;
}

body .entry-content > .alignfull.careers-sec .wp-block-group__inner-container > *{
    max-width: 1000px!important;
}

.post-meta-edit-link-wrapper {
    display: none;
}

.entry-content > .alignfull.product-sec {
    margin-top: -5rem;
}

img.wp-image-178 {
    display: inline-block;
    margin-right: 2rem;
    vertical-align: text-bottom;
}

/*vision*/
.vision_bg {
	margin: -165px 0 0 0!important;
    padding-top: 145px;
}


/*contact*/
table.contact-form{
	margin-bottom: 0;
}
table.contact-form ,table.contact-form *,table.contact-form .error{
	border: none;
}

table.contact-form  *:not(tbody):not(tr):not(td):not(span){
	border: 1px solid #fff;
	background-color: transparent!important;
	color: #fff;
	resize: vertical;
}
table.contact-form td{
	padding: 0 0 30px;
}
table.contact-form tr:first-of-type td:first-of-type{
	padding-right: 10px;
}
table.contact-form tr:first-of-type td:last-of-type{
	padding-left: 10px;
}

table.contact-form input[type="text"],
table.contact-form input[type="email"],
table.contact-form input:-internal-autofill-selected,
table.contact-form textarea,
table.contact-form td > *{
	border: 1px solid #fff;
	background-color: transparent!important;
	color: #fff;
	resize: vertical;
}

table.contact-form input[type="text"]:focus,
table.contact-form input[type="email"]:focus,
.mainBtn input[type="submit"]:focus,
table.contact-form textarea:focus{
	outline: none!important;
    outline-offset: 0!important;
	border-color: #295FB5!important;
}

.mainBtn input[type="submit"]{
	background: #000;
}

.mainBtn input[type="submit"]:hover{
	opacity: 0.7;
}

.mainBtn input[type="submit"]:focus{
	border-color: #fff!important;
}

.mw_wp_form .error{
	position: absolute;
}

.mw_wp_form.mw_wp_form_complete{
	margin-top: 40px;
}

/*company*/
.company-table *{
	border: none;
}
.company-table table{
	margin-bottom: 0px;
}

.company-table td:first-of-type{
	font-weight: 900;
    margin-bottom: 10px;
}

.company-history p.his-year{
	font-weight: 900;
}
.company-history p.his-event{
	margin-left: 15px!important;
    padding-left: 30px;
    border-left: 1px solid;
}

.alignwide.company-officer {margin-top: 20px!important;}

.entry-content .company-officer.wp-block-columns h3{
	margin: 0;
	font-weight: 500;
}

.entry-content .company-officer.wp-block-columns h3+p{
	color: #7D7D7D;
	font-size:15px;
}
.entry-content .company-officer.wp-block-columns hr{
	background-color: #7D7D7D!important;
}

.company-officer .wp-block-column > *:last-child{
	margin-top:16px;
}

/*careers*/
.entry-content > .alignfull.careers-wrap{
	min-height: 80vh;
    margin: 0;
    padding-bottom: 50px;
}

.careers-wrap h2.careers-head{
	font-size:28px;
	font-weight: 100;
}

.careers-wrap h3{
	font-size:18px;
}

/*product*/
.product-wrap{
	margin: 40px auto 0!important;
	max-width: 1366px;
}

.product-wrap .wp-block-cover{
	margin: 5px 0 0;
	transition: 0.3s ease;
	background-size: 100%;
	padding: 27px 0;
}

.product-wrap .wp-block-cover:hover{
	padding: 50px 0;
}

.product-wrap .wp-block-cover.has-background-dim::before{
	transition: 0.3s ease;
}
.product-wrap .wp-block-cover.has-background-dim:after{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
	transition: all 0.5s ease;
	background-image: -webkit-linear-gradient(right, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 25%,rgba(0,0,0,0) 75%,rgba(0,0,0,1) 100%);
	background-image: -o-linear-gradient(right, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 25%,rgba(0,0,0,0) 75%,rgba(0,0,0,1) 100%);
	background-image: linear-gradient(to left,  rgba(0,0,0,1) 0%, rgba(0,0,0,0) 25%,rgba(0,0,0,0) 75%,rgba(0,0,0,1) 100%);
}


.product-wrap .wp-block-cover.has-background-dim:hover::before{
	opacity: 0;
}

.product-wrap .wp-block-group__inner-container{
	position: relative;
}

.product-wrap .prod-name+p{
	width: 80%!important;
	margin: 0!important;
}

.product-wrap .see-more{
	text-align: right;
	position: absolute;
    right: 0;
    width: auto;
    top: 0;
    bottom: 0;
    margin: auto!important;
    height: 0;
}



/*product child*/


.product-fv-cover .noSwipe::before,.product-fv-cover .noSwipe::after{
	content: '\f144';
	font-family: "Font Awesome 5 Free";
	position: absolute;
	display: flex;
    justify-content: center;
    align-items: center;
	font-size: 60px;
	font-weight: 100;
	width: 100%;
	height: 105%;
	transition: 0.3s ease;
}

.product-fv-cover .noSwipe::before{
	content: '\f144';
	font-weight: 900;
	color: #000;
	opacity: 0.7;
    background: rgba(0,0,0,0.5);
}

.product-fv-cover .noSwipe:hover::before,.product-fv-cover .noSwipe:hover::after{
	transform: scale(1.1);
	opacity: 0;
}
#prod-fv_wrapper{
	cursor: pointer;
}

#prod-fv_forcefullwidth {margin-top: -82px!important;}


.column_l .wp-block-group__inner-container > *{
	max-width: none!important;
}

.column_l .prod-name-wrap > div{display: flex;}

.column_l .prod-name{
	font-size:60px;
	letter-spacing: 0;
	margin-right: 1rem!important;
	margin-top: 0!important;
	width: 100px!important;
}

.column_l .prod-name+p{font-size:22px;}




.column_r,.column_r a,.column_r .side-spec p{
	letter-spacing: 0;
}

.column_r h5,.fullscreen-open a,.side-spec h5{
	font-size:16px;
	margin-bottom: 0.5rem!important;
}

.column_r h6,.side-spec h6{
	font-size:12px;
	color:#7D7D7D;
	margin: 0.5rem 0!important;
}

.side-spec h6+hr{
	background: #7D7D7D!important;
}

.side-spec p{
	font-size:30px;
	font-weight: 700;
	line-height: 1;
	margin-top:10px;
}

.side-spec p.tanni span{
	font-size:15px;
	display: inline-block;
	margin:0 3px;
}

.side-spec .spec-point p{
	font-size: 40px;
}

.side-spec [class*="__inner-container"] > .spec-point:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
	width: 80%;
	text-align: center;
}

.fullscreen-open{
	text-align: center;
}

.fullscreen-open a{
	color: #fff;
}

.fullscreen-open a::after{
	content: '\f35d';
	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
	margin-left: 0.5rem;
	vertical-align: text-bottom;
}

.fullscreen-open :not(.fancybox-iframe){display: none;}

.side-view iframe{height: 600px;}


/*gallery*/
.news-cover.wp-block-cover .wp-block-cover__inner-container{
	max-width: none;
    width:100%;
}


.prodct-gallery-sec .alignfull .wp-block-group__inner-container
.wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter){
	margin: 0;
	background: #000;
}
.prodct-gallery-sec .alignfull [class*="__inner-container"] > 
*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image{
	width: 25%;
	float: right;
    overflow: hidden;
	position: relative;
	max-width: none;
}


.prodct-gallery-sec .alignfull [class*="__inner-container"] > 
*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image img{
	width: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'!important;
	transition: all 0.3s ease;
	position: relative;
	display: block;
    overflow: hidden;
	max-width: none
}


.prodct-gallery-sec .alignfull [class*="__inner-container"] > 
*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image:first-of-type{
	width: 50%;
    max-width: none;
	float: left;
}

.prodct-gallery-sec .alignfull [class*="__inner-container"] > 
*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image a{
	opacity: 0.5;
  	filter: alpha(opacity=50);
  	zoom: 1;
	display: block;
}


.prodct-gallery-sec .alignfull [class*="__inner-container"] > 
*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image a:hover{
	opacity: 1;
  	filter: alpha(opacity=100); /* IE8 and lower */
  	zoom: 1; /* Triggers "hasLayout" in IE 7 and lower */
}




/*privacy-policy*/

body.privacy-policy h2{
	font-size: 34px!important;
    line-height: normal;
}

@media (max-width: 1000px){
	
	.breadcrumb-inner,.product-child-wrap{
		max-width: calc(100% - 8rem);
	}
	
	
	/*header*/
	#site-header .header-inner {
    	padding: 2.2rem 0!important;
	}
	
	body #site-header{top: 0;}
	
	#site-header .header-inner,
	button.close-nav-toggle{
		padding: 1rem 0 1rem;
    	height: 67px;
	}
	
	#site-header .nav-toggle.active .svg-icon{display: none;}
	
	:focus {outline: none!important;}
	
	body.single-post.showing-menu-modal #site-header,body.archive.showing-menu-modal #site-header{
		background-color: transparent;
	}
	
	.breadcrumb-inner, .product-child-wrap {
 		max-width: calc(100% - 4rem);
	}
	.modal-menu ul li{
	    border-left-width: 2rem;
	}
	
	.sub-menu .menu-item a{
		padding-left: 2rem;
	}
	
	.header-titles .site-title {
    	margin: 0;
    	width: 110px;
	}
	
	.modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a{
	    padding-top: 2rem;
		padding-bottom: 2rem;
		font-size: 16px;
	}
	
	.menu-item-wpml-ls-3-ja,
	.menu-item-wpml-ls-3-en{
		border-color: #000!important;
	}
	
	.menu-item-wpml-ls-3-ja a,
	.menu-item-wpml-ls-3-en a{
    	font-size: 13px;
		background: #262626;
	}
	
	.header-inner .toggle svg{
		width: 20px;
    	margin: 0 0 0 auto;
	}
	
	/*footer*/
	div[class*="menu-footer-menu-information-"] li:first-of-type{
		display: block;
	}
	
	
	/*top*/
	#post-grid-133.post-grid {padding: 30px;}
	
	.item-g1, .item-s1, .item-arm{
		flex-basis: 100%;
		top: 0;
	}
	
	.product-item-col .wp-block-column:not(:first-child) {
    margin-left: 0px;
	}
	
	.news-cover{padding: 0;}
	
	[class*="__inner-container"] .product-item-col .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright),
	.product-item-col .wp-block-column:not(:first-child){
		background-position: inherit;
	 	margin-top: 0;
	}
	
	.wp-block-columns.alignfull.product-item-col{
	    padding: 0;
		margin-top: 50px;
	}
	
	#post-grid-133.post-grid .grid-nav-top{margin-bottom: 10px}
	

	
	/*vision*/
	.side-spec .spec-point{
		flex-basis: calc(50% - 16px)!important;
	}
	
	/*product*/
	.product-child-wrap > .wp-block-group__inner-container > .wp-block-columns{
		display: block;
	}
	.wp-block-column.column_r, .column_r > .wp-block-group,.wp-block-group[class*="side-"],
	[class*="__inner-container"] .wp-block-group[class*="side-"]:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright),
	[class*="side-"] [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide),
	.side-spec [class*="__inner-container"] > .spec-point:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
		margin-left: 0;
		margin-right: 0;
    	max-width: none;
    	width: 100%;
		flex-wrap: nowrap;
	}
	.product-child-wrap .wp-block-column:not(:first-child):not(.column_r){
		margin-left: 32px;
	}
	
	.side-view iframe{height: 900px;}
	
	/*news + single*/
	body.single-post #site-content > .site-content-inner,body.archive #site-content > .site-content-inner,
	body.single-post #site-content > aside, body.archive #site-content > aside{
		width: calc(100% - 8rem);
    	margin: 0 auto;
		float: none;
	}
	body.archive #site-content > aside,body.single-post #site-content > aside{
		display: block;
	}
	#my_sidebar_widget{margin-left: 0;}
	
	.archive .post-inner, .reduced-spacing header.archive-header,
	body.archive #site-content .site-content-inner article,
	body.archive .site-content-inner article:first-of-type .entry-header{
		width: 100%;
	}
	#my_sidebar_widget .side-item > a:first-of-type{
		width: 25%;
	}
	#my_sidebar_widget .side-item > a:last-of-type{
	    width: 75%;
	}
	
	/*company*/
	.company-history{margin:5rem auto!important;}
}


@media (max-width: 600px){
		
	h2.general-head:before, h1.archive-title::before{
		left: 0;
	}
	
	.mainBtn a, .mainBtn input{width: 100%;}
	
	body:not(.home) #site-content {
    	padding-top: 150px;
	}
	
	#breadcrumb{top:67px;}
	
	.wp-block-archives:not(.alignwide):not(.alignfull), .wp-block-categories:not(.alignwide):not(.alignfull), .wp-block-code, .wp-block-columns:not(.alignwide):not(.alignfull), .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .wp-block-group:not(.has-background):not(.alignwide):not(.alignfull), .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright), .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright), .wp-block-media-text:not(.alignwide):not(.alignfull), .wp-block-preformatted, .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright), .wp-block-quote, .wp-block-quote.is-large, .wp-block-quote.is-style-large, .wp-block-verse, .wp-block-video:not(.alignwide):not(.alignfull){
		margin-bottom: 2rem;
    	margin-top: 2rem;
	}
	.wp-block-column{margin-bottom: 2rem;}
	
	ol {
    margin-left: 7px!important;
	}
	
	body.privacy-policy .semiwide [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
		padding-left: 2rem;
		padding-right: 2rem;
	}
	
	/*footer*/
	
	.column-one .image {width: 50%;}
	
	.footer-widgets .widget {
    	margin-top: 2rem;
	}
	.footer-widgets.column-one,.footer-widgets.column-two{
		width: 100%
	}
	
	.column-one .widget.widget_nav_menu{
		margin-top: 1rem;
	}
	
	
	.footer-widgets.column-two{
		margin-left: 0;
	    flex-wrap: wrap;
	}
	.footer-widgets.column-two > .widget:not(:last-of-type){
		width: 50%;
		margin-bottom: 30px;
	}
	
	
	/*top*/
	.vision-sec {min-height: 80vh;}
	.vision-sec [class*="__inner-container"] > .general-head:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright){
		margin-left:2rem;
		margin-right:2rem;
	}
	
	p.vision-desc{font-size: 19px;}
	
	
	[class*="__inner-container"] .product-item-col .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright){
		margin: 0;
	}
	
	.product-item-col .wp-block-cover{
		align-items: flex-end;
	}
	
	#post-grid-133.post-grid .grid-nav-top {
    	margin-bottom: 40px;
	}
	
	#post-grid-133.post-grid{padding: 0}
	#post-grid-133 .grid-items{flex-wrap: wrap;}
	
	.home-video-sec .wp-block-column{
		margin-bottom: 0;
	}
	
	:root .has-primary-background-color.yt-ch-sec{
	    padding: 4rem 2rem!important;
	}
	
	.careers-sec [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide){
		padding: 0;
	}
	
	h2.has-text-align-center.general-head.for-center.for-youtube-icon{
		margin-bottom: 15px;
	}
	
	
	/*vision*/
	.side-spec .spec-point:nth-of-type(even){
		margin-left: 32px;
	}
	/*product*/
	
	.product-wrap .see-more{
		position: relative;
    	text-align: left;
    	margin-top: 10px!important;
		height: 100%;
	}
	.product-wrap .wp-block-cover{background-size: cover;}
	
	.product-wrap .wp-block-cover:hover{
		padding: 0;
	}
	.product-wrap .wp-block-cover br{
		display: none;
	}
	.product-wrap .prod-name+p{width: 100%!important;}
	
	#prod-fv_forcefullwidth {margin-top: -52px!important;}
	
	.product-child-wrap .prod-name+p,
	.product-child-wrap .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color){
		padding: 0!important;
	}
	.column_l .prod-name-wrap > div{display: block;}
	.column_l .prod-name{width: auto!important;}
	.product-child-wrap .prod-name+p{font-size: 15px;}
	
	.column_l .wp-block-column:not(:first-child):not(.column_r) {
    	margin-left: 0px;
	}
	
	.product-child-wrap .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter){
		margin: 0;
	}
	/**/
	.side-view iframe{
		height: 500px;
	}
	.fullscreen-open .fancybox-iframe{display: none;}
	.fullscreen-open :not(.fancybox-iframe){display: block;}
	
	.side-spec p,.side-spec .spec-point p{font-size: 30px;}
	
	.prodct-gallery-sec .alignfull [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image:first-of-type{
		width: 100%;
	}
	
	.prodct-gallery-sec .alignfull [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image{
		width: 50%;
	}
	
	.prodct-gallery-sec .alignfull [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide).wp-block-image a{
		opacity: 1;
	}
	
	.side-spec .wp-block-column{margin-bottom: 0;
	}
	
	/*news + sngle*/
	body.single-post #site-content > .site-content-inner, body.archive #site-content > .site-content-inner, body.single-post #site-content > aside, body.archive #site-content > aside{
		width: calc(100% - 4rem);
	}
	
	body.archive .site-content-inner article:first-of-type .entry-header{
		position: relative;
	}
	body.archive #site-content .site-content-inner article:not(:first-of-type){
		width: 100%;
	}
	body.archive #site-content .site-content-inner article:nth-of-type(odd):not(:first-of-type){
		margin-left: 0;
	}
	#my_sidebar_widget .side-title span{
		-webkit-line-clamp: 3;
	    margin-top: -2px;
		padding: 0 0 0 15px;
	}
	
	body.archive #site-content .site-content-inner article:not(:first-of-type) .see-more{
		display: block;
	}
	
	#my_sidebar_widget h2{margin-bottom: 20px}
	
	/*company*/
	.company-table td:first-of-type{min-width: 100px;}
	
	.company-history .wp-block-group__inner-container{
		width: calc(100% - 4rem);
	}
	
	.company-history h2.has-text-align-center.general-head.for-center:not(.for-youtube-icon){
		margin-bottom: 30px!important;
	}
	
	.company-history p.his-event{
		margin-left: 0!important;
		padding-left: 20px;
	}
	
	.alignwide.company-officer {margin-top: 45px!important;}
	
	.company-officer .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter){
		margin-top: 0;
	}
	.company-officer > .wp-block-column{
		margin-bottom: 5rem;
	}
	
	/*contact*/
	div#mw_wp_form_mw-wp-form-334{
		width: calc(100% - 4rem);
	}
	
}

