@charset "utf-8";

body,html{ font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif; font-feature-settings: "palt"; }

h1.page-header-title { font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif; font-feature-settings: "palt";}

h4{padding:.5em;background-color:var(--vk-color-border-hr);border-radius:var(--vk-size-radius);}
h5{padding-bottom:.5em;border-bottom:1px solid var(--vk-color-border-hr);}
.wp-block-button__link{padding-top:calc(.6em + 2px);padding-bottom:calc(.6em + 2px);}
.vk_button{margin-top:0;}
.vk_button .vk_button_link.btn,.wp-block-button.is-style-outline .wp-block-button__link{border-width:1px;padding-top:.6em;padding-bottom:.6em;}

h2.wp-block-heading.fjm-h2{ padding:.5em 0; border-top:none; border-bottom:none; background-color: #000000; border-left: 5.0rem #ff0000 solid; color: #ffffff; text-indent: 1.0rem; line-height: 200%; }

h2.wp-block-heading.fjm-h2-wn{ padding:0.5rem; border-top:none; border-bottom:none; background-color:inherit; border-left:none; color:#000000; line-height:120%; }


h3.wp-block-heading.fjm-h3{ padding:.5em; border-top:none; border-bottom:none; background-color:transparent; border-radius:0px; }
h3.wp-block-heading.fjm-h3::after{ border-bottom:none; }
h4.wp-block-heading.fjm-h4{ padding:.5em; background-color:transparent; border-radius:0px; }

.wp-block-table.fjm-cmp-table table ,
.wp-block-table.fjm-cmp-table table tr th ,
.wp-block-table.fjm-cmp-table table tr td ,
.wp-block-table.fjm-crr-table table ,
.wp-block-table.fjm-crr-table table tr th ,
.wp-block-table.fjm-crr-table table tr td {
	border: none;
	font-size: 1.0rem;
}

.wp-block-button.fjm-button .wp-block-button__link {
	color:#ffffff;
	font-weight: bold;
	background-color: #000000;
}

.wp-block-list.contract-fac {
	font-family: 'BIZ UDGothic', 'Noto Sans JP', monospace;
}

/* ----- 共通 ----- */

#my-display-none{display: none;}

/* Gnavi検索 */
.menu-Gnavi-container {
	float: right;
}
#search-box {
	display: block;
	text-decoration: none;
	text-align: center;
	line-height: 1.1;
	float: right;
	padding: 7px 10px;
	color: #666;
}
#search-box:hover {
	color: #999;
}
#search-box:before {
	font-size: 1.5em;
	font-family: "fontawesome";
	content: '\f002';
	width: 100%;
	display: block;
	color:#666;
}
#search-box span {
	font-size: .7em;
}
#content01,#content02 {
	position: relative;

}
.close-content01,.close-content02 {
	position: absolute;
	right: 10px;
	top: 10px;
	font-size: 24px;
	cursor: pointer;
	border:1px #ccc solid;
	padding: 3px 10px;
}
.open-menu {
	-webkit-filter: blur(4px);
	-ms-filter: blur(4px);
	filter: blur(4px);
}
.close-menu {
	-webkit-filter: blur(0px);
	-ms-filter: blur(0px);
	filter: blur(0px);
}
.modal-content {
	padding: 20px;
}

/* 共通 */
.clear{
	clear:both;
	line-height:0;
	height:0;
	padding:0 0 1px 0;
}
a img:hover {
	-ms-filter: "alpha(opacity=70)"; /* IE 8,9 */
	-moz-opacity:0.7; /* FF , Netscape */
	-khtml-opacity: 0.7; /* Safari 1.x */
	opacity:0.7;
	zoom:1; /*IE*/
}
.center{
	text-align:center;
}
.breadSection .breadcrumb>li+li:before{/* パンくずリスト */
	content:">";
	font-family: "Times New Roman";font-size:10px;
}
dl dt{
	font-weight: normal;
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}
dl dd{
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}

dl.list2 dt{
	clear: left;
	float: left;
	width: 9em;
	white-space: nowrap;
 	padding: 8px 0.5em;
	font-weight: normal;
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}
dl.list2 dd{
	margin-left: 0;
	padding: 8px 0.5em 8px 15em;
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}
/*========================================
お知らせ
========================================*/
.flex-center{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}
.flex-center a{
	color: #fff;
}

/* お問い合わせ */
dl.inquiries dt{
	clear: left;
	float: left;
	width: 9em;
	white-space: nowrap;
 	padding: 13px 0.5em;
	font-weight: bold;
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}
dl.inquiries dd{
	margin-left: 0;
	padding: 13px 0.5em 13px 15em;
	border-left:none !important;
	border:none !important;
	border-left-color:#fff;
	border-color:#fff;
	background-color:#fff;
	border-left-width:0px;
	border-left-style:none;
}
span.req{vertical-align:middle;margin-bottom:4px;margin-left:5px;padding:3px 3px 2px;color:#fff;background:#ff0000;font-size:10px;font-weight: bold;}
input[type=text],input[type=checkbox],input[type=radio],input[type=email]{
	display:inline;
	width:auto
}
input.wpcf7-submit { padding:15px 8px;margin-top:10px;border-color:#6dba44; }

/*========================================
table横スクロール用
========================================*/
.table-wrap{overflow: auto; position:relative;}
@media screen and (max-width: 1410px) {
	.table-wrap:before{
		font-size:12px;
		background-color:#e07903;
		position: absolute;
		top:0px;
		border-radius: 5px;
		padding: 0.05em 0.5em;
	}
}

/* テーブル */
@media (max-width: 650px) {
	.alignleft,
	img.alignleft,
	.alignright,
	img.alignright {
		float: none;
		display:block;
		margin: 0 auto;
		text-align: center;
		border: 0 none;
		margin-bottom: 10px;
	}
	dl.list2 dt,dl.inquiries dt{
		float: none;
		white-space: nowrap;
		padding: 8px 0.1em;
		font-weight: normal;
	}
	dl.list2 dd,dl.inquiries dd{
		margin-left: 0;
		padding: 0;
	}
	dl.list2 dd input{
		display: inline;
		width: auto;
	}
	dl.inquiries dd input,input.wpcf7-submit {
		display: block;
		width:100%
	}
	dl.list2 dt:before,dl.inquiries dt:before {
		font-family: 'FontAwesome';
		content: '\f152';
		padding-right:3px;
	}
	.form-width  {
		max-width: 100%;
	}
	input[type=text],input[type=checkbox],input[type=radio],input[type=email]{
		display:block;
		width:100%
	}
}

/* H見出し関係 */
.title-box {
	border-top:none !important;
	border-bottom:none !important;
	background: #f5f5f5;
	color: #737373;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-ms-grid-row-align: center;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	line-height: 1.5;
	width: 200px;
	height: 200px;
	margin-bottom: 0;
	font-weight: 700;
}

@media only screen and (max-width: 767px){
	.title-box  {
		font-size: 16px !important;
		width: 110px;
		height: 110px;
	}
}


/* トップスライドショー */
.carousel-control .icon-next,.carousel-control .icon-prev{font-size:30px;}
.mini-content-2{top:85%;left:50%;-webkit-transform:translateY(-85%) translateX(-50%);transform:translateY(-85%) translateX(-50%)}
.slide-text-caption{display: none;}
@media (min-width: 992px){
	.slide-text-caption{display:block}
	.carousel-control .icon-next,.carousel-control .icon-prev{font-size:80px;}
}
@media screen and (max-width: 730px) {
	.slide-text-title{font-size:5.5vw}
	.slide .btn-ghost{font-size:3.5vw}
}



/* CTA */
section.veu_cta h1.cta_title{display:none}

.pc_off{display:none;}
@media (max-width: 650px) {
	.pc_off{display:inline;}
}


/*========================================
グローバルメニュー：ロゴの下に表示
========================================*/
@media (min-width: 992px) {
	.navbar-header {
		height: 100px;
	}
}
/*========================================
グローバルメニュー：ロゴの隣に電話番号
========================================*/
/* ロゴ右側のブロック */
.logo-after {
	display: block;
	width: 220px;
	float: right;
}
.logo-after .btn-primary{
	border-color:#6dba44;
	padding-top:2px;
	padding-bottom:2px;
}
/* ロゴ画像の場合
.logo-after img {
	max-height: 60px;
	}
*/
/* ヘッダー幅を100%に */
.navbar-header {
	width: 100%;
}
@media (max-width: 991px) {
	.logo-after {
		width: 100%;
		margin-top: 10px;
		margin-bottom: 10px;
		text-align: center;
	}
}

.site-header .site-header-logo {
	position: static;
	float: left;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 50px;
	margin: 0;
	padding: 0;
}

.site-header .site-header-logo a {
	color:#ffffff;
	font-family: 'BIZ UDMincho',"Hiragino Mincho ProN","Hiragino Mincho Pro","Noto Serif JP",serif;
}

.veu_contact .contact_txt {
	color: #ffffff;
}

.veu_contact .contact_txt_tel {
	padding: 5px 0;
	font-size: 28px;
	line-height: 105%;
	font-weight: 700;
	color: #ffffff;
}

/* 連絡先のスタイル */
.logo-after .message {
	font-size: 12px;
}
.logo-after .company {
	font-size: 15px;
}
.logo-after .address {
	font-size: 13px;
	color: #ffffff;
}
.logo-after .company a{
	color: #ffffff;
}
.logo-after .address a{
	color: #ffffff;
}
.logo-after .toptel a{
	color: #ffffff;
	font-size: 22px;
	font-weight: bold;
}
.logo-after .toptel a:hover{
	color: #ffffff;
	text-decoration: none ;
}
.logo-after .time {
	font-size: 12px;
	color: #000;
}

.contact_txt img {
	max-height: 100px;
	max-width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto
}

@media (max-width: 991px) {
	.logo-after {
		display:none;/*PC表示の時全非表示*/
	}
}

/*全ページヘッダー*/
.siteheader {
	background-color: white;
}

/*全ページコンテンツ*/
.siteContent {
	padding: 0em 0 0em;
}
.entry-body {
	padding: 3em 0 1em;
}


/*各ページトップ見出し*/
.page-header-title, h1.page-header-title:first-child {
	font-size: 3.5em;
	font-weight: 800;
	text-shadow: 3px 3px white;
}

@media screen and (max-width: 767px) {
	.page-header-title, h1.page-header-title:first-child {
		font-size: 2em;
		font-weight: 800;
		text-shadow: 3px 3px white;
	}
}

.global-nav-list>li{float:left; flex-direction:row;}
.global-nav-list>li:hover .global-nav-description,.global-nav-list>li[class*=current] .global-nav-description{opacity:1;}
.global-nav-list>li:hover:before,.global-nav-list>li[class*=current]:before{width:100%;}
.global-nav-list>li:before{position:absolute;left:0;bottom:0;content:"";width:0;border-bottom:1px solid var(--vk-color-primary);transition:all .5s ease-out;}
.global-nav-list>li.menu-item-has-children::after{transition:all .2s ease-out;content:"";position:absolute;padding:0;bottom:-10px;left:50%;transform:translateX(-50%);border:10px solid transparent;z-index:1000;opacity:0;border-bottom-color:var(--vk-color-primary);}
.device-pc .global-nav-list>li.menu-item-has-children:hover::after,.global-nav-list>li.acc-parent-open::after{opacity:1;bottom:1px;}
.global-nav-list>li.acc-parent-close::after{opacity:0;}
.global-nav-list>li>ul.sub-menu{margin-top:-1px;}
.global-nav-list ul li a:hover{background-color:var(--vk-color-primary);}
.global-nav--layout--penetration .global-nav-list>li:first-child { border-left: 2px solid #ffffff; }
.global-nav--layout--penetration .global-nav-list>li { width: 100%; border-right: 2px solid #ffffff; }


body:not(.header_scrolled) .global-nav--text-layout--vertical .global-nav-list>li:before{left:unset;bottom:unset;border-bottom:none;border-right:1px solid var(--vk-color-primary);top:14px;right:0;height:0;}
body:not(.header_scrolled) .global-nav--text-layout--vertical .global-nav-list>li.acc-parent-open::after,body:not(.header_scrolled) .global-nav--text-layout--vertical .global-nav-list>li.menu-item-has-children:hover::after{bottom:0;}
body:not(.header_scrolled).device-pc .global-nav--text-layout--vertical .global-nav-list>li:hover:before,body:not(.header_scrolled).device-pc .global-nav--text-layout--vertical .global-nav-list>li[class*=current]:before{height:calc(100% - 14px - 14px);}
body:not(.header_scrolled).device-mobile .global-nav--text-layout--vertical .global-nav-list>li.acc-parent-open:before,body:not(.header_scrolled).device-mobile .global-nav--text-layout--vertical .global-nav-list>li[class*=current]:before{height:calc(100% - 14px - 3em);}
.entry-title--post-type--page,h2{padding:.5em 0;border-top:2px solid var(--vk-color-primary);border-bottom:1px solid var(--vk-color-border-hr)}
.site-footer-title,.sub-section-title,h3{position:relative;border-bottom:1px solid var(--vk-color-border);background:0 0;padding:0 0 .5em}
.site-footer-title:after,.sub-section-title:after,h3:after{content:".";line-height:0;display:block;overflow:hidden;position:absolute;bottom:-1px;width:30%;border-bottom:1px solid var(--vk-color-primary)}

.site-header{ width:100%;overflow:visible;z-index:1000;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.05); background: none; background-color: #148cdc; }

.page-header { width: 100%; height: 20vw; margin-top: 0; margin-bottom: 0; padding-bottom: 0; display: flex; align-items: center; position: relative; z-index: 1; min-height: 8rem; text-align: center; }

.global-nav-list li {
	margin: 0;
	list-style: none;
	line-height: 1.4rem;
	font-size: 1.2rem;
	position: relative;
}

.global-nav-list>li .global-nav-name {
	font-size: 1.2rem;
	display: block;
	width: 100%;
	white-space: nowrap
}

.global-nav-list>li .global-nav-description {
	display: block;
	overflow: hidden;
	font-size: 1.0rem;
	line-height: 1.2rem;
	color: #ffffff;
	opacity: 1;
	text-align: center;
	white-space: nowrap;
}



/* 設備一覧ヘッダー画像 */
.page-id-19 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_facility.jpg') no-repeat center / cover;
}
.page-id-19 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-19 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-19 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

/* 会社案内ヘッダー画像 */
.page-id-51 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_company.jpg') no-repeat center / cover;
}
.page-id-51 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-51 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-51 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

/* 製品紹介ヘッダー画像 */
.page-id-42 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_product.jpg') no-repeat center / cover;
}
.page-id-42 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-42 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-42 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

/* 設備紹介ヘッダー画像 */
.page-id-235 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_facility.jpg') no-repeat center / cover;
}
.page-id-235 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-235 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-235 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

/* お問合せタイトル画像 */
.page-id-266 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_contact.jpg') no-repeat center / cover;
}
.page-id-266 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-266 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-266 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

/* アクセスヘッダー画像 */
.page-id-428 .page-header {
	background: url('/wp-content/themes/fjm-child/_g3/assets/images/headers/header_access.jpg') no-repeat center / cover;
}
.page-id-428 .page-header .page-header-title {
	background-color: rgba(255,255,255,0.6);
	font-weight: bold;
}
.page-id-428 .page-header .page-header-title .sub_title {
	font-family: Lato;
	font-size: 0.8em;
}
.page-id-428 .page-header .page-header-title::first-letter {
	color: #148cdc;
}

.breadcrumb{border-top:1px solid var(--vk-color-border-hr);border-bottom:1px solid var(--vk-color-border-hr)}
.site-footer{width:100%;overflow:visible;border-top:3px solid #c9c9ca}
.footer-nav{border-bottom:2px solid var(--vk-color-border)}
.footer-nav-list li:first-child{border-left:1px solid var(--vk-color-border)}
.footer-nav-list li{border-right:1px solid var(--vk-color-border)}
.veu_contact { display: block; clear: both; overflow: hidden; margin: 0 5px; }
.nav { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; flex-direction:row; padding-left: 0; margin-bottom: 0; list-style: none; }


/*
.site-body .entry-body { display:block; background-color: transparent; overflow:hidden; width:100vw;max-width:100vw; padding:1px 0px; clear:both; padding: 6em 2em; margin-left: calc(((100vw - 100%) / 2) * -1); margin-right: calc(((100vw - 100%) / 2) * -1); }
*/

.container.site-footer-copyright  { display:block; color:#ffffff; background-color: #148cdc; overflow:hidden; width:100vw;max-width:100vw;min-height:unset; height:3.0rem; padding:1px 0px; clear:both; }

@media (max-width:767.98px){
	body,html{font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;}
	.footer-nav{border-bottom:none}
	.footer-nav-list li:first-child{border-left:none}
	.footer-nav-list li{border-right:none;border-bottom:1px solid var(--vk-color-border-hr)}
}


@media (max-width: 659px) {
	#header-top.header-top { display:none; }
	#topSubBnr { display:none; }
}


@media (min-width: 660px) { /* スクロール分余裕に20px */
	#header-top.header-top { display:block; color:#ffffff; border-top: 3px solid #148cdc; overflow:hidden; width:100%; height:1.5rem; padding:1px 0px; clear:both; }
	#header-top.header-top > .container > p.header-top-description { font-size: 0.8rem; }

	.header_scrolled .site-header{background-color:#148cdc;clear:both;z-index:1000;position:fixed;top:0;left:0;width:100vw;max-width:100vw;min-height:unset;box-shadow:0 1px 3px rgba(0,0,0,.1);animation:header_drop .5s ease-out 0s 1 alternate none running;}

	.header_scrolled #header-top.header-top > .container > p.header-top-description { display: none; }
	.header_scrolled .header-top, .header_scrolled .site-header-logo{ display:block; }
	.header_scrolled .site-header .global-nav { display: block; width: auto; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); clear: both; }

	#global-nav.global-nav { color:#ffffff; border-bottom: 3px solid #ffffff; border-left: 1px solid #ffffff; border-right: 1px solid #ffffff; background-color: transparent; background-image: -moz-linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%); background-image: -webkit-linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%); background-image: linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%); }

	.global-nav-name { color: #000000; }

}

.container-fluid { margin-right: auto; margin-left: auto; max-width: 980px; }
.vcenter { display: inline-block; vertical-align: middle; }
.arrow img { padding:5px 0; }
.inline-block-line { display: inline-block !important; }
.small-input-text { width: 100px !important; }
.collateral-check-box { padding-left: 12px; }
.font-size-large { font-size: 18px; }
.font-size-small { font-size: 12px; }

.fadeUpTrigger {
    opacity: 0;
}

.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {

    from {
        opacity: 0;
        transform: translateY(100px);
    }
    to {
        opacity: 1;
        transform: translate(0);
    }
}

/* extra-small-devices */
/* -------------------------------------------------- */
.for-extra-small { display: none !important; }
.for-middle-over { display: inline-block !important; }

/* extension */
/* -------------------------------------------------- */
.ime { ime-mode: active; }
.ime-disabled { ime-mode: disabled; }
.radiolabel { font-weight: normal !important; }
.overflow { overflow: hidden; }


/*HOME*/
/*お知らせ*/
.whatsnew h2{
	font-size:30px;
}
.whatsnew {
	padding-top:1em;
	padding-bottom:4em;
}

.mainSection header h1 {
	margin-top: 2em;
	line-height: 1.4em;
}

.subSection .widget {
	margin-bottom: 25px;
	margin-top:4em;
}

@media (min-width: 992px){
	.siteContent{
		padding: 1em 0 0em;
	}
}

/*見出し*/
@media screen and (max-width: 767px) {
	h2.group1 {
		font-size: 25px;
	}
	h2.group2 {
		font-size: 20px;
	}

	.footer-bnr {
		width: 100vw;
		margin: 0 auto;
	}

	.footer-bnr img {
		width: 100%;
	}
}
@media screen and (min-width: 767px) {
	h2.group1 {
		font-size: 30px;
	}
	h2.group2 {
		font-size: 30px;
	}

	.footer-bnr {
		width: 30vw;
		margin: 0 auto;
	}

	.footer-bnr img {
		width: 100%;
	}
}


.div_access{
	width:100%;
}
.div_access .div_map {
	width:50%;
}

.table_access tr td:nth-of-type(1){
	width:30%;
}
.table_access tr td:nth-of-type(2){
	width:70%;
}

.privacy-policy .page-header {
	display:none;
}

.pu {
	background-color: #efefef;
	box-shadow: 0 0 0 9999px rgba(0, 0, 0, .8);
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 50%;
	height: 50%;
	overflow-y: scroll;
}

/* チェックボックスの初期設定 */
#pu-on{
	display: none;
}
/* チェックされたらポップアップウインドウを開く */
#pu-on:checked + .pu{
	display: block;
}

/* 閉じるアイコン（右上） */
.icon-close{
	background: #000;
	color: #fff;
	font-size: 30px;
	padding: 0 10px;
	position: absolute;
	right: 0;
}

/* 開くボタン */
.btn-open{
	background: #fff;
	border-radius: 10px;
	color: #fff;
	padding: 10px;
	cursor: pointer;
	margin: 10px auto;
	width: 95%;
	text-align: center;
}

/*	会社案内ページの経営理念 感謝　感動　共感のスタイル */
.rinen {
	font-size: 40px;
	padding-top:60px;
	padding-bottom:60px;
	text-align: center;
	font-family: 'BIZ UDMincho',"Hiragino Mincho ProN","Hiragino Mincho Pro","Noto Serif JP",serif;
}


/* 未使用 */
.topics {
	padding: 1rem 2rem;
	background: #f4f4f4;
}

/* モバイル */
@media screen and (max-width: 600px) {
	.rinen {
		font-size: 1.7rem;
	}
}

/*	設備一覧用テーブル */
#blueTable table{
	border-collapse: collapse;
	text-align: left;
	line-height: 1.5;
	border: 1px solid #ccc;
}

#blueTable table th, #blueTable table td {
	padding: 14px 25px;
}

#blueTable table th {
	font-size: 1.2rem;
	font-weight: normal;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #0B6098;
	color: #fff;
	width: 85%;
}

#blueTable table td {
	font-size: 1rem;
}

/*	モバイル */
@media screen and (max-width: 600px) {
	#content p.has-text-align-right {
		text-align: right;
	}
	#blueTable table th, #blueTable table td {
		padding: 15px;
	}
	#blueTable table th {
		font-size: 1rem;
	}
	#blueTable table td {
		font-size: 0.9rem;
	}
}

/*	会社案内（会社概要・沿革)用テーブル */
#grayTable table{
	border-collapse: collapse;
	text-align: left;
	line-height: 1.7;
	margin-top: 30px;
}

#grayTable table tr td:nth-of-type(1){
	font-weight: 600;
	border-top: 1px solid #ccc;
	border-right: none;
	border-bottom: 1px solid #ccc;
	background: #E8F1F6;
}

#grayTable table tr td:nth-of-type(2){
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

#grayTable table td {
	font-size: 1rem;
	font-weight: normal;
	padding: 24px 30px;
}

/*	モバイル */
@media screen and (max-width: 600px) {
	#grayTable table tr td:nth-of-type(1){
		width: 30%;
	}
	#grayTable table td {
		font-size: 0.8rem;
		padding: 10px;
	}
	/*	沿革 */
	.historyTable table tr td span:nth-of-type(1){
		display: block;
	}
}

/*	会社概要内主要取引先リスト */
.client-list {
	column-count: 2;
}
/*	モバイル */
@media screen and (max-width: 600px) {
	.client-list {
		column-count: auto;
	}
}


/* h3タグを太字にする */
h3.bold{
	font-weight:bold;
	text-align:center;
}

/* 会社案内(ISO9001,ISO14001用)テーブル */
#isoTable table{
	border:none;
	font-size: 1rem;
}

#isoTable td{
	border-bottom:1px solid #ccc;
	border-top:none;
	border-left:none;
	border-right:none;
	padding:20px;
}

#isoTable table tbody tr td:nth-of-type(1){
	font-weight:bold;
}

/* モバイル */
@media screen and (max-width: 600px) {
	#isoTable table{
		font-size: 0.8rem;
	}
}

/* h3見出し用(下線左端が水色) */
h3.header_under{
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	margin-top:  10px;					/* デフォルトCSS打ち消し */
	font-size:  1.4rem;					/* 文字サイズ指定 */
	border-bottom: solid 1px #aaa9a9;	/* 線指定 */
	padding-bottom:  18px;				/* 余白指定 */
	margin-bottom: 15px;				/* 周りの余白指定 */
	position:  relative;				/* 位置調整 */
	font-weight: bold;					/* 文字の太さ調整 */
}

h3.header_under::before{
	content:  '';						/* 空白の要素を作る */
	width: 10%;							/* 幅指定 */
	height: 1px;						/* 高さ指定 */
	background-color: #77d7f1;			/* 背景色指定 */
	display: block;						/* ブロック要素にする */
	position: absolute;					/* 位置調整 */
	left: 0;							/* 位置調整 */
	bottom: -1px;						/* 位置調整 */
}

/* モバイル */
@media screen and (max-width: 600px) {
	h3.header_under {
		font-size: 1.1rem;
		padding-bottom: 13px;
		margin-bottom: 10px;
	}
}

/* h3見出し用(下線左半分が水色) */
h3.rinen_under{
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	padding-top: 20px;					/* デフォルトCSS打ち消し */
	padding-bottom: 50px;
	font-size: 1.9rem;					/* 文字サイズ指定 */
	border-bottom: solid 1px #ccc;		/* 線指定 */
	margin-bottom: 42px;				/* 周りの余白指定 */
	position: relative;					/* 位置調整 */
	font-weight: bolder;				/* 文字の太さ調整 */
}

h3.rinen_under::after{
	content: '';						/* 空白の要素を作る */
	width: 50%;							/* 幅指定 */
	height: 1px;						/* 高さ指定 */
	background-color: #6fa3d1;			/* 背景色指定 */
	display: block;						/* ブロック要素にする */
	position: absolute;					/* 位置調整 */
	left: 0;							/* 位置調整 */
	bottom: -1px;						/* 位置調整 */
}

p.has-text-align-center {
	font-size: 1.4rem;
	margin-bottom: 100px;
}

/* モバイル */
@media screen and (max-width: 600px) {
	h3.rinen_under{
		font-size: 1.5rem;
		padding-bottom: 30px;
		margin-bottom: 25px;
	}
	p.has-text-align-center {
		font-size: 1rem;
		margin-bottom: 30px;
	}
}

/* TOPページ強みの背景 */
.panelMain{
	background-color: #eff6f9;
	padding: 54px 0 10px 0;
}
/* モバイル */
@media screen and (max-width: 600px) {
	.panelMain {
		padding-top: 28px;
	}
}

.panelMain .innerBox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0;
	margin: 0 auto 50px auto;
}
/* モバイル */
@media screen and (max-width: 600px) {
	.panelMain .innerBox {
		margin-bottom: 0;
	}
}

/* TOPページ（新着情報)の左側のセル */
.whatnewHeadCell{
	border-right: 1px solid #c4c4c4;
}

.whatnewHeadCell h2{
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
}

/* 新着情報の枠線指定 */
/*
.whatnewPanel{
	background: rgba(255,255,255,0.65);
	border: 1px solid #c4c4c4;
	padding: 50px 0;
}
*/
.whatnewPanel {
	background: inherit;
	border: none;
	padding: 50px 0;
}
.whatnewPanel dl {
	display: flex;
	flex-wrap: wrap;
	padding: 0 30px;
}
.whatnewPanel dl dt {
	font-weight: normal;
	flex: 0 0 20%;
}
.whatnewPanel dl dd {
	flex: 0 0 80%;
}
/* モバイル */
@media screen and (max-width: 600px) {
	#content p.has-text-align-center {
		text-align: center;
	}
	.whatnewHeadCell{
		border: none;
	}
	
	.whatnewPanel dl {
		display: block;
		flex-wrap: nowrap;
		font-size: 0.9rem;
	}
}
/* 筑波山の背景を指定 */
.tsukubaPanel{
	background: url("/wp-content/uploads/2020/11/tsukuba.jpg") no-repeat center top;
	background-size: cover;
	margin-top:50px;
	padding: 50px 0 50px 0;
}

/* 製品紹介ページ(クロメート処理の特徴)背景 */
ul.gray {
	background-color: #f1f1f6;
	border-radius: 5px;
	padding: 30px 30px 25px 30px;
	margin: 0 auto 20px auto;
}
ul.gray li {
	padding-left: 0;
	margin-left: 30px;
	font-size: 1.2rem;
}

p.h4, .wp-block-column {
	font-size: 1rem;
}
/* モバイル */
@media screen and (max-width: 600px) {
	ul.gray {
		padding: 20px 20px 20px 10px;
	}
	ul.gray li {
		font-size: 1rem;
	}
}


/* 設備紹介ページ(各写真の説明) */
h3.explain {
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	position: relative;
	padding-left: 2em;
	font-size: 16px;
	border-bottom:none;
}

h3.explain::after {
	position: absolute;
	top: 50%;
	left:0;
	transform:translateY(-50%);
	content: '';
	width: 20px;
	height:4px;
	background-color: #46A4E3;
}

/*	工程の副見出し */
h2.explain {
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	position: relative;
	padding-left: 2rem;
	font-size: 1.6rem;
	border-bottom:none;
}

h2.explain::after {
	position: absolute;
	top: 50%;
	left:0;
	transform:translateY(-50%);
	content: '';
	width: 20px;
	height:4px;
	background-color: #46A4E3;
}

/*	設備紹介ページ */
.fackouteiMargin {
	margin-top:70px;
	margin-bottom:70px;
}

/* ----------------------------------------------------
	お問い合わせページ
---------------------------------------------------- */
/*	お問合せ　電話 */
.boxTel {
	position: relative;
	padding: 1em 2em;
	margin-top: 100px;
	border: 1px solid #abc2db;
	border-radius: 5px;
}

.boxTel .box-title {
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	font-size: 1.3rem;
	font-weight: bold;
	padding: 0 0.8em;
	margin: 0;
	background-color: #fff;
	transform: translateY(-50%) translateX(0.5em);
}

.boxTel p {
	margin: 0; 
	padding: 0;
}

/*	お問合せ電話番号 */
h2.wp-block-heading.contactPageTel{ padding:0.5rem; border-top:none; border-bottom:none; background-color:inherit; border-left:none; color:#000000; line-height:120%; font-size:32px; margin-bottom:10px;}





h2.wp-block-heading.contactPageTel::before{
	content:'Tel.';
	font-size:28px;
	font-weight:lighter;
	padding-right:5px;
}
h2.wp-block-heading.contactPageTel a {
	color: #333;
}

/*	お問合せFAX番号 */
h2.wp-block-heading.contactPageFax{ padding:0.5rem; border-top:none; border-bottom:none; background-color:inherit; border-left:none; color:#000000; line-height:120%; font-size:32px; margin-bottom:10px;}


h2.wp-block-heading.contactPageFax::before{
	content:'Fax.';
	font-size:28px;
	font-weight:lighter;
	padding-right:5px;
}
h2.wp-block-heading.contactPageFax a {
	color: #333;
}

/* お問合せ受付時間 */
p.contactPageTime{
	padding-bottom:20px;
}

/* お問い合わせフォーム説明 */
p.contactExplain{
	padding-top:40px;
	text-align:center;
	font-size: 1.1rem;
}

/* 文章の途中で赤字を入れる */
span.red{
	color: #f00;
}

/* 必須アイコン */
.reqd_icon {
	color: #fff;
	font-size: 0.9rem;
	background-color: #cd5c5c;
	border-radius: 3px;
	padding: 3px 5px;
	margin: 0 2px 0 10px;
	vertical-align: top;
}

.contactTable table{
	width: 100%;
}

.contactTable th,.contactTable td {
	font-weight: 500;  /* Windows游ゴシックかすれ対策 */
	width: 70%;
}

.contactTable th{
	font-size: 1rem;
	width:30%;
	background-color:#fff;
}

input.wpcf7-form-control,.contactTable textarea {
	width: 94%;
}
p.contact-txt {
	margin-top: 20px;
}

.wpcf7 input[type="submit"] {
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	color: #000 !important;
	font-weight: bold;
}

/*	モバイル */
@media screen and (max-width: 600px) {
	.boxTel {
		margin-top: 50px;
	}
	.boxTel .box-title {
		font-size: 1.1rem;
	}
	.contactTable th,.contactTable td {
		width: 100%;
		display: block;
	}
	.contactTable th {
		line-height: 1.5;
		margin-bottom: -10px;
	}
	.contactTable td {
		margin-bottom: 10px;
	}
	.contactTable tr:last-child td {
		margin-bottom: 0;
	}
	p.contactPageTime {
		font-size: 0.9rem;
	}
	p.contactExplain{
		text-align: left;
		padding-top: 20px;
	}
	input.wpcf7-form-control,.contactTable textarea {
		width: 90%;
	}
	p.contact-txt {
		font-size: 0.85rem;
	}
	.reqd_icon {
		font-size: 0.8rem;
		padding: 0 3px 1px 3px;
		vertical-align: 8%;
	}
}

/*	プライバシーポリシー
---------------------------------------------------- */
.contact-privacy-caution {
	font-size: 1rem;
	text-align: center;
}
.contact-privacy {
	height: 250px;
	overflow-y: scroll;
	background-color: #fff;
	border: 1px solid #ccc;
	padding: 35px;
	margin: 20px 10px 40px 10px;
}
.contact-privacy h2,.contact-privacy h3 {
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
}
.contact-privacy h2 {
	border-bottom: 1px solid #ccc;
	padding-bottom: 10px;
}
.contact-privacy h3 {
	font-weight: bold;
	font-size: 1rem;
	border-bottom: none;
	padding-bottom: 5px;
	margin-bottom: 3px;
}
.contact-privacy p {
	margin-bottom: 20px;
}
/* モバイル */
@media screen and (max-width: 600px) {
	#content .contact-privacy-caution {
		font-size: 0.8rem;
	}
}

/* アクセスページ */
h4.headaccess {
	border-bottom: 3px dashed #000;
}


#topFreeArea h2.subTopic {
	position: relative;
	text-align: center;
	padding-top: 50px;
	font-family: Lato, 'BIZ UDGothic', 'Noto Sans JP', 'M PLUS 1p', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, arial, helvetica, clean, sans-serif;
	letter-spacing: 0.04em;	
	font-size: 2.2rem;
	margin-bottom: 25px;
	border: none;
}

#topFreeArea h2.subTopic::before {
	position: absolute;
	bottom: -27px; /* #topFreeArea h2.subTopicのmargin-bottom+-2px */
	left: calc(50% - 150px);
	width: 300px;
	height: 3px;
	content: '';
	border-radius: 3px;
	background: #148cdc;
}

#topFreeArea h2.subTopic::after  {
	content: "Our Strengths";
	font-size: 1.1rem;
	font-weight: normal;
	display: block;
	margin-top: -10px;
}
/*	モバイル */
@media screen and (max-width: 600px) {
	#topFreeArea h2.subTopic {
		font-size: 1.5rem;
		padding-top: 20px;
		margin-bottom: 0;
	}
	#topFreeArea h2.subTopic::before {
		left: calc(50% - 100px);
		width: 200px;
		bottom: -2px;
	}
	#topFreeArea h2.subTopic::after  {
		font-size: 0.8rem;
		margin-top: 0;
	}
	h2.subTopic {
		padding-top: 25px;
	}
}
