/*
Theme Name: sakamoto
*/

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	font-size: 100%;
	padding: 0;
	border: 0;
	margin: 0;
	vertical-align: baseline
}
body {
	line-height: 1
}
ol, ul {
	list-style: none
}
blockquote, q {
	quotes: none
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block
}
.clear {
	clear: both
}
.sticky {
}
.bypostauthor {
}
.wp-caption {
}
.wp-caption-text {
}
.gallery-caption {
}
.alignright {
}
.alignleft {
}
.aligncenter {
}
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.8;
	font-weight: 500;
}
img {
	vertical-align: bottom;
}
* {
	box-sizing: border-box;
}
a:link {
	text-decoration: none;
	color: #000;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a[href^="tel:"] {
	cursor: default;
}
/* ヘッダー */

.site-description {
	display: none;
}
header {
	position: absolute;
	width: auto;
	height: auto;
	margin-bottom: 0;
	text-align: center;
	top: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
#branding {
	width: 1140px;
	margin: 0 auto;
	display: flex;
}
#site-description {
	display: none;
}
#site-title {
	padding: 20px 0 20px;
	margin-right: 70px;
	text-align: left;
	font-size: 24px;
	font-weight: 600;
}
#site-title a {
	color: #fff;
}
#header-sub {
	float: left;
	padding: 14px 20px 15px 0px;
	border-right: 1px solid #DDDDDD;
}
#header-sub li {
	float: left;
	margin-right: 10px;
}
#header-sub li:last-child {
	margin-right: 0;
}
.header-tel {
	float: left;
	border-right: 1px solid #DDDDDD;
	padding: 14px 18px 15px 20px;
}
.header-iso {
	float: right;
	border-right: 1px solid #DDDDDD;
	padding: 12px 8px 12px 20px;
}
.zdo_drawer_button {
	display: none;
}

@media screen and (max-width:767px) {
a[href^="tel:"] {
	cursor: pointer;
}
header#header {
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 2;
	border-top: 12px solid #0243ae;
	background-color: #fff;
}
#branding {
	width: auto;
}
#site-title {
	width: 75%;
	float: none;
	padding: 10px 0 10px 10px;
	box-sizing: border-box;
}
#site-title img {
	max-width: 100%;
	height: auto;
}
#header-sub, .header-tel, .header-iso {
	display: none;
}
/* ハンバーガーメニュー */

.zdo_drawer_button {
	display: block;
}
.zdo_drawer_menu {
	position: relative;
}
header {
	padding: 10px 0;
}
img {
	max-width: 100%;
	height: auto;
}
#site-title a {
	color: #000;
}
}
/* メニュー */

#menu {
	clear: both;
	height: 64px;
}
#menu ul {
	width: auto;
	margin: 0 auto;
	text-align: left;
	display: flex;
}
#menu ul li {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin: 20px 0;
}
#menu ul li:last-child {
	margin-right: 0;
	float: right;
}
#menu ul li a {
	display: block;
	padding: 5px 30px;
	color: #fff;
	text-decoration: none;
}
#menu ul li.nav07 a {
/*	padding-right:20px;
	background:url(./images/common/nav_down_icon.png) no-repeat right center;
*/
}
#menu ul li a:hover {
	text-decoration: underline;
}
#menu ul li.nav07 {
	margin-right: 0;
}
#menu ul li.nav-contact {
	background-color: #0243ae;
}

@media screen and (max-width:767px) {
#menu ul {
	width: auto;
	background-color: #E3E3E5;
	display: block;
}
#menu ul li {
	float: none;
	font-size: 16px;
	margin-right: 0;
	font-weight: bold;
	display: block;
}
#menu ul li a {
	display: block;
	padding: 10px 0;
	color: #1b1b1b;
	text-decoration: none;
	border-bottom: 1px solid #ccc;
}
#menu ul li:last-child {
	float: none;
}
#menu ul li.nav-contact {
	background-color: inherit;
}
#menu ul li {
	margin: 0;
}
}
/* 見出し系 */

h2.ttl {
	font-size: 60px;
	padding-bottom: 0px;
	margin-bottom: 10px;
	font-weight: bold;
	text-align: center;
	line-height: 100%;
}
.sec h2.ttl {
	font-size: 28px;
	margin-bottom: 80px;
}
.sec h2.ttl span {
	font-size: 18px;
}
.sec h2.ttl-blue {
	font-size: 60px;
	color: #0040b6;
	line-height: 0.5;
}
.sec h2.ttl-white {
	font-size: 60px;
	color: #fff;
	line-height: 0.5;
}
.sec h2.ttl-s {
	font-size: 36px;
	margin-bottom: 80px;
}
h2.ttl img {
	margin-bottom: 5px;
}
h2.ttl-left {
	text-align: left;
}
h3.ttl {
	font-weight: bold;
	font-size: 22px;
	text-align: center;
	margin-bottom: 30px;
}
h3.ttl-left {
	text-align: left;
}
h3.ttl-blue {
	border-bottom: 5px solid #0243AE;
	color: #0243AE;
	font-size: 20px;
	padding-bottom: 6px;
	margin-bottom: 15px;
}
.recruit-interview-msg h3.ttl-recruit-blue, .recruit-end-h h3.ttl-recruit-blue {
	font-size: 26px;
	color: #fff;
	background-color: #0243AE;
	text-align: center;
	padding: 10px 0;
	margin-bottom: 0;
}

@media screen and (max-width:767px) {
.sec h2.ttl {
	font-size: 28px;
	margin-bottom: 25px;
}
.sec h2.ttl-small {
	font-size: 24px;
}
h2.ttl {
	padding-bottom: 20px;
	font-size: 40px;
	text-align: center;
}
.sec h2.ttl-s {
	margin-bottom: 40px;
}
.sec h2.ttl-blue {
	line-height: 1;
}
.sec h2.ttl-white {
	line-height: 1;
	text-align: center;
}
}
/* 画像フロート関係 */

.img-col4 {
}
.img-col4 figure {
	width: 264px;
	height: auto;
	float: left;
	margin: 0 28px 0 0;
}
.img-col4 figure:last-child {
	margin-right: 0;
}
.img-col4 figure figcaption {
	margin-top: 20px;
	font-size: 18px;
}
/* 共通パーツ */

.details-bt, .details-bt-white {
	clear: both;
	text-align: center;
}
.details-bt a, .details-bt-white a {
	display: inline-block;
	padding: 15px 50px 15px 15px;
	text-align: center;
	background: url(./images/common/details_icon.png) no-repeat right 15px center;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
}
.details-bt a:hover, .details-bt-white a:hover, .google-map-bt a:hover {
	text-decoration: underline;
}
.details-bt-white a {
	border: 1px solid #fff;
	color: #fff;
	background: url(./images/common/details_icon_white.png) no-repeat right 15px center;
}
.main-txt {
	text-align: center;
	font-size: 16px;
	margin-bottom: 150px;
}
.main-txt p {
	margin-bottom: 30px;
}
.mb-normal {
	margin-bottom: 40px;
}
.mb-large {
	margin-bottom: 70px;
}
.mb-slarge {
	margin-bottom: 150px;
}
.mb-xlarge {
	margin-bottom: 190px;
}
.figright-img p {
	margin-bottom: 20px;
}
figure img {
	max-width: 100%;
	height: auto;
}
.col-red {
	color: #d00;
}
.col-blue, .must {
	color: #0040b6;
}
/* 各コンテンツヘッダー見出し */

.page-title {
	width: auto;
	height: 500px;
	text-align: center;
	position: relative;
}
.page-title h1 {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	width: 100%;
	padding: 0 5%;
}
.page-company .page-title {
	background: url(./images/company/ttl_bg.jpg) no-repeat top center;
}
.page-recruit .page-title {
	background: url(./images/recruit/ttl_bg.jpg) no-repeat top center;
}
.page-product .page-title {
	background: url(./images/product/ttl_bg.jpg) no-repeat top center;
}
.page-equipment .page-title {
	background: url(./images/equipment/ttl_bg.jpg) no-repeat top center;
}
.page-career .page-title {
	background: url(./images/career/ttl_bg.jpg) no-repeat top center;
}
.topics .page-title {
	background: url(./images/topics/ttl_bg.jpg) no-repeat top center;
}
.page-service .page-title {
	background: url(./images/service/ttl_bg.jpg) no-repeat top center;
}
.page-guidelines .page-title {
	background: url(./images/guidelines/ttl_bg.jpg) no-repeat top center;
}
.page-interview1 .page-title,
.page-interview2 .page-title {
	background: url(./images/interview1/ttl_bg.jpg) no-repeat top center;
}
.page-contact .page-title, .page-contact-test .page-title, .page-thanks .page-title, .page-career-form .page-title, .page-career-thanks .page-title {
	background: url(./images/contact/ttl_bg.jpg) no-repeat top center;
}
.pc-logo {
}
.sp-logo {
	display: none;
}
.sp-img {
	display: none;
}

@media screen and (max-width:767px) {
.page-company .page-title {
	background-position: center center;
}
.page-title {
	height: 250px;
}
.page-title h1 img {
	width: auto;
}
.main-txt {
	text-align: left;
}
.pc-logo {
	display: none;
}
.sp-logo {
	display: block;
}
.sp-img {
	display: block;
}
}
/* コンテンツ幅 */

#content {
	position: relative;
	z-index: 1;
}
#container {
	position: relative;
	max-width: 1920px;
	margin: 0 auto;
}
.entry-content {
	width: auto;
	height: auto;
	padding: 90px 0 0;
}
.entry-content img {
	max-width: 100%;
	height: auto;
}
.entry-content .main {
	width: 1140px;
	margin: 100px auto 0;
}
.entry-content p {
	margin: 2em 0;
}

@media screen and (max-width:767px) {
#container {
	padding-top: 25%;
}
.entry-content {
	width: auto;
	height: auto;
	padding: 45px 0;
}
.entry-content .main {
	width: auto;
	margin: 0 auto;
	padding: 0 5%;
}
}
/* メインビジュアル */

.mv {
	position: relative;
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	padding-top: 47.08%;
	background: url(./images/top/mv01.jpg) no-repeat top center;
	background-size: contain;
	margin-bottom: 85px;
}
.mv .cnt {
	position: absolute;
	width: 634px;
	height: 542px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.mv .cnt img {
	max-width: 634px;
	width: auto;
	height: auto;
}

@media screen and (max-width:1600px) {
.mv {
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	padding-top: 49.4%;
}
.mv .cnt {
	width: 500px;
	height: 427px;
}
.mv .cnt img {
	max-width: 500px;
}
}

@media screen and (max-width:1200px) {
.mv {
}
.mv .cnt {
	width: 350px;
	height: 299px;
}
.mv .cnt img {
	max-width: 350px;
}
}
/* TOP各コンテンツナビ */

.top-content-nav {
	width: auto;
	margin-bottom: 90px;
}
.top-content-nav ul {
	display: flex;
}
.top-content-nav ul li {
	position: relative;
	width : calc(100% / 3);
}
.top-content-nav ul li img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.top-content-nav ul li span {
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 30px;
	font-weight: bold;
}
.top-content-nav ul li span.icon {
	transform: none;
	top: auto;
	bottom: 0;
	left: auto;
	right: 0;
}
.top-content-nav ul li a {
	background-color: #0243ae;
	display: block;
}
.top-content-nav ul li a:hover img {
	cursor: pointer;
	filter: alpha(opacity=60);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=60)";  /* ie 8 */
	-moz-opacity: 0.6;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.6;              /* Safari 1.x */
	opacity: 0.6;
	zoom: 1;
}
/* プロダクト */

.service-cnt {
	position: relative;
	width: 1140px;
	height: auto;
	margin: 0 auto;
}
.products, .wide-silver {
	text-align: center;
	background-color: #F0F0F2;
	padding: 100px 0;
	margin-bottom: 150px;
}
.products, .wide-silver:last-of-type {
	margin-bottom: 0;
}
.products .cnt, .wide-silver .cnt {
	width: 1140px;
	margin: 0 auto;
	text-align: center;
}
.products .copy-txt {
	margin-bottom: 40px;
}
.service-cnt p {
	font-size: 18px;
}
/* リクルート */

.recruit {
	position: relative;
	width: auto;
	height: 465px;
	background: url(./images/top/recruit_bg.jpg) no-repeat center top;
	text-align: right;
	margin-bottom: 100px;
}
.recruit .cnt {
	position: absolute;
	top: 90px;
	right: auto;
	left: 0;
	width: auto;
	height: 273px;
	padding: 45px 75px 45px 0;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
}
.recruit .cnt .copy-txt {
	margin-bottom: 30px;
}
.recruit .cnt .details-bt {
	position: absolute;
	top: 40px;
	right: 40px;
	text-align: right;
}
.recruit .cnt .details-bt-center {
	position: relative;
	text-align: center;
	border: 2px solid #fff;
	top: auto;
	right: auto;
	margin: 20px 0;
}
.recruit .cnt .details-bt-center a {
	display: block;
	background-position: center right 20px;
}
/* TOP リクルート */

.home .company {
	position: relative;
	width: auto;
	height: 604px;
	background: url(./images/top/company_bg.jpg) no-repeat center top;
	text-align: right;
	margin-bottom: 100px;
}
.home .company .cnt {
	position: absolute;
	top: 270px;
	left: 0;
	width: 568px;
	height: 301px;
	padding: 45px 75px;
	background: url(./images/top/service_cnt_bg.png) no-repeat left top;
	text-align: left;
}
.home .company .cnt .copy-txt {
	margin-bottom: 30px;
}
.home .company .cnt .details-bt {
	position: absolute;
	top: 40px;
	right: 40px;
	text-align: right;
}
/* TOP 製品紹介 */

.top-product {
	position: relative;
	width: auto;
	height: 528px;
	background: url(./images/top/product_bg.jpg) no-repeat center top;
	text-align: right;
	margin-bottom: 90px;
}
.top-product .cnt {
	position: absolute;
	top: 90px;
	right: 0;
	width: auto;
	height: 273px;
	padding: 45px 75px 45px 0;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
}
.top-product .cnt .copy-txt {
	margin-bottom: 30px;
}
.top-product .cnt .details-bt {
	position: absolute;
	top: auto;
	right: 0;
	text-align: right;
	bottom: 0;
}
/* TOP 設備紹介 */

.home .top-interview {
	position: relative;
	width: auto;
	height: 465px;
	background: url(./images/top/interview_bg.jpg) no-repeat right top;
	text-align: right;
	margin-bottom: 100px;
}
.home .top-interview .cnt {
	top: 90px;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
}
.home .top-interview .service-cnt {
	width: auto;
	display: flex;
	justify-content: flex-end;
}
.home .top-interview .cnt-info {
	width: auto;
	margin: 30px 30px 30px 0;
	padding: 45px 50px;
	box-sizing: border-box;
	background-color: rgba(255,255,255,0.8);
	color: #0243ae;
}
.home .top-interview .cnt-info h2.ttl-left {
	font-size: 24px;
	line-height: 1.6;
}
.home .top-interview .cnt-info h2.ttl-left span {
	font-size: 18px;
}
.home .top-interview .cnt-link {
	width: auto;
	height: 465px;
}
.home .top-interview .cnt-info .interview-com p {
	font-size: 24px;
	text-align: center;
	font-weight: bold;
}
.home .top-interview .cnt-info .interview-com {
	position: relative;
	padding: 40px;
	margin-bottom: 20px;
}
.home .top-interview .cnt-info .interview-com::before {
	font-size: 48px;
	content: "「";
	position: absolute;
	font-weight: normal;
	top: 0px;
	left: -30px;
}
.home .top-interview .cnt-info .interview-com::after {
	font-size: 48px;
	content: "」";
	position: absolute;
	font-weight: normal;
	bottom: 0px;
	right: -30px;
}
.home .top-interview .cnt-info .details-bt, .google-map-bt {
	border: 1px solid #0243AE;
	background-color: #fff;
}
.home .top-interview .cnt-info .details-bt a, .google-map-bt a {
	display: block;
	color: #0243AE;
	background: url(./images/common/details_icon_blue.png) no-repeat right 15px center;
}

@media screen and (max-width:1600px) {
.home .top-interview {
}
.home .top-interview .cnt-info .interview-com::before {
	left: -30px;
}
}

@media screen and (max-width:767px) {
.service-cnt {
	width: auto;
}
.home .company .cnt .details-bt {
	text-align: center;
}
.top-content-nav ul {
	display: block;
}
.top-content-nav ul li {
	width: auto;
}
.home .top-interview .service-cnt {
	width: auto;
	display: block;
}
.home .top-interview .cnt-info {
	width: auto;
	margin: 0 20px 20px 20px;
	padding: 20px;
}
.home .top-interview .service-cnt {
	width: auto;
	display: block;
	padding: 20px 0 0 0;
}
.home .top-interview {
	position: relative;
	width: auto;
	height: auto;
	/* background: url(./images/top/interview_bg.jpg) no-repeat right top; */
	text-align: left;
	margin-bottom: 0;
	background-color: #0243ae;
}
.home .top-interview .cnt-link {
	width: auto;
	height: auto;
}
.home .top-interview .cnt {
	top: auto;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
}
.top-content-nav {
	width: auto;
	margin-bottom: 50px;
}
.home .top-interview .cnt-info {
	background-color: rgba(255,255,255,0.3);
	color: #0243AE;
	background: url(./images/top/interview_bg_sp.jpg) no-repeat top center;
	background-size: cover;
	text-shadow: 1px 1px 0px #fff, -1px 1px 0px #fff, 1px -1px 0px #fff, -1px -1px 0px #fff;
}
.service-cnt p {
	font-size: 16px;
	text-align: center;
}
.cnt-info .ttl {
	margin-top: 60px;
}
}
/* 設備紹介 */

.equip {
	width: auto;
	height: 1260px;
	text-align: center;
	padding: 100px 0;
	background: url(./images/top/equip.jpg) no-repeat top center;
}
.equip .cnt {
	width: 1140px;
	margin: 0 auto;
}
.equip .ttl {
	color: #fff;
	background: url(./images/common/h2_ttl_bar_white.png) no-repeat bottom center;
}
.equip .equip-inner {
	margin: 30px 0;
	width: 50%;
	float: left;
}
.equip .equip-inner table {
	width: 100%;
	margin-bottom: 30px;
	table-layout: fixed;
}
.equip .equip-inner table thead th, .equip .equip-inner table thead td {
	border-bottom: 1px solid #fff;
}
.equip .equip-inner table th, .equip .equip-inner table td {
	color: #fff;
	padding: 15px 20px;
	text-align: left;
}
.equip .equip-inner table th {
	width: 400px;
	font-weight: bold;
}
.equip .equip-inner table td {
	text-align: center;
}
.equip .details-bt {
	clear: both;
	color: #fff;
}
/* アクセス */

.access {
	text-align: center;
	padding: 0;
	text-align: center;
}
.access .cnt {
	width: 1140px;
	margin: 0 auto;
	text-align: center;
}
.access .copy-txt {
	margin-bottom: 40px;
}
.access .gmap {
	margin-bottom: 40px;
}
.access .access-left, .access .access-right {
	min-height: 254px;
	float: left;
	width: 50%;
	text-align: left;
}
.access .access-right {
}
.access .access-left p, .access .access-right p {
	margin: 0 0 5px 0;
}
.access-cnt ul, ul.list-ul {
	margin-left: 20px;
	margin-bottom: 20px;
}
.access-cnt ul li, ul.list-ul li {
	list-style: disc;
}
.access h2.ttl {
	color: #0243ae;
	line-height: 50%;
}
.access h2.ttl span {
	color: #0243ae;
	font-size: 17px;
}
.google-map-bt {
	width: 295px;
	margin-bottom: 30px;
	box-sizing: border-box;
}
.google-map-bt a {
	padding: 15px;
	text-align: center;
}
/* お問合せ */

.contact {
	text-align: center;
	margin: 90px 0;
}
.wide-silver .contact {
	margin-top: 0;
}
.contact .cnt {
	width: 1140px;
	margin: 0 auto;
	text-align: center;
}
.contact .contact-left {
	float: left;
}
.contact .contact-right {
	float: right;
}
.tel-fax {
	width: 1140px;
	margin: 0 auto;
	background-color: #fff;
	border-bottom: 6px solid #CCCCCC;
	padding: 30px 0;
}
.tel-fax .left, .tel-fax .right {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	padding: 10px 150px;
	margin-bottom: 20px;
}
.tel-fax .left {
	border-right: 1px solid #ccc;
}
.tel-fax .tel, .tel-fax .fax {
	margin-bottom: 10px;
	font-weight: bold;
}
.tel-fax .tel {
	font-size: 20px;
	background: url(./images/contact/tel_icon.png) no-repeat left center;
	padding: 0 0 0 25px;
}
.tel-fax .fax {
	font-size: 20px;
	background: url(./images/contact/fax_icon.png) no-repeat left center;
	padding: 0 0 0 30px;
}
.tel-fax .num {
	font-size: 30px;
	font-weight: bold;
}

@media screen and (max-width:767px) {
.mv {
	width: auto;
	height: auto;
	padding: 0;
 padding-bottom: calc( 904 / 1920 * 100% );
	position: relative;
	margin-bottom: 40px;
}
.mv .cnt {
	width: auto;
	height: auto;
	padding: 6% 15%;
	text-align: center;
}
.mv .cnt img {
	max-width: 100%;
	height: auto;
}
.design {
	margin: 5%;
	width: auto;
	height: auto;
	text-align: left;
	padding: 45px 20px;
}
.design .copy-txt {
	margin-bottom: 35px;
}
.products, .wide-silver {
	padding: 50px 0;
	margin-bottom: 75px;
}
.products .cnt, .wide-silver .cnt {
	width: auto;
}
.img-col4 {
	padding: 0 5%;
}
.img-col4 figure {
	width: 49%;
	float: left;
	margin: 0 2% 30px 0;
}
.img-col4 figure:nth-child(even) {
	margin-right: 0;
}
.recruit, .top-product {
	position: relative;
	width: auto;
	height: auto;
	text-align: left;
	margin: 0 0 50px 0;
	background-position: left top;
}
.recruit .cnt, .top-product .cnt {
	position: relative;
	top: 0;
	right: 0;
	width: auto;
	height: auto;
	padding: 20px;
	text-align: left;
	background-size: 100% 100%;
}
.home .company, .home .top-equip {
	position: relative;
	width: auto;
	height: auto;
	background: none;
	text-align: left;
	margin: 0 5% 50px 5%;
}
.home .company .cnt, .home .top-equip .cnt {
	position: relative;
	top: 0;
	right: 0;
	left: 0;
	width: auto;
	height: auto;
	padding: 45px 10%;
	text-align: left;
	background-size: 100% 100%;
}
.equip {
	width: auto;
	height: auto;
	text-align: center;
	padding: 50px 0;
	background-size: auto 100%;
}
.equip .cnt {
	width: auto;
	margin: 0 auto;
}
.equip .equip-inner {
	margin: 30px 0;
	width: auto;
	float: none;
}
.equip .equip-inner table th {
	width: auto;
}
.equip .equip-inner table th {
	width: 80%;
}
.equip .equip-inner table td {
	width: 20%;
	text-align: center;
}
.access {
	text-align: center;
	padding: 50px 0;
	text-align: center;
}
.access .cnt {
	width: auto;
	margin: 0 auto;
	text-align: center;
}
.access .access-left, .access .access-right {
	min-height: inherit;
	float: none;
	width: auto;
	text-align: left;
	padding-left: 0;
	padding: 0;
	margin: 0 5% 20px;
	border: none;
	border-left: none;
}
.company-access .access-left, .company-access .access-right {
	margin: 0 0 20px;
}
.access .access-left p, .access .access-right p {
	margin-bottom: 0;
}
.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.gmap iframe, .gmap object, .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.contact {
	text-align: center;
	padding: 50px 0;
	background-color: #F0F0F2;
}
.page-recruit .contact {
	padding: 0;
}
.contact .cnt {
	width: auto;
	margin: 0 auto;
	text-align: center;
}
.contact .contact-left {
	float: none;
	padding: 0 5% 30px;
}
.contact .contact-right {
	float: none;
	padding: 0 5%;
}
.tel-fax {
	width: auto;
}
.tel-fax .left, .tel-fax .right {
	display: block;
	padding: 10px 20px;
}
.tel-fax .left {
	border-right: none;
	border-bottom: 1px solid #ccc;
}
.tel-fax .tel, .tel-fax .fax {
	display: inline-block;
}
.tel-fax .tel {
}
.tel-fax .fax {
}
.tel-fax .num {
}
.home .company .cnt .details-bt, .home .recruit .cnt .details-bt, .home .top-product .cnt .details-bt, .home .top-equip .cnt .details-bt {
	position: relative;
	top: 0;
	right: 0;
	left: 0;
	text-align: center;
}
.google-map-bt {
	width: auto;
	margin-bottom: 30px;
	box-sizing: border-box;
}
}
/* 会社案内 */

.wide {
	text-align: center;
	margin-bottom: 100px;
}
.w1140 {
	margin: 0 auto;
	width: 1140px;
}
.page-company {
}
.company-greeting {
	display: flex;
}
.company-img {
	width: 50%;
	max-width: 805px;
	background-color: #0243AE;
	text-align: left;
}
.company-mgs {
	flex: 1;
	background-color: #0243AE;
	text-align: left;
	color: #fff;
	font-size: 18px;
	padding: 100px 10% 70px 30px;
}
.company-mgs .ttl {
	text-align: left;
}
.philosophy {
	text-align: center;
	color: #0040b6;
	margin: 100px 0;
}
.philosophy01 strong {
	font-size: 36px;
}
.philosophy02 strong {
	font-size: 26px;
}
.page-company .wide-blue {
	padding: 100px 0;
	margin-bottom: 100px;
	background-color: #0243AE;
}
.page-company .wide-blue-h {
	background-color: inherit;
	background: url(./images/company/blue_bg.gif) repeat-x 0 0;
}
.col4 {
	display: flex;
	justify-content: space-between;
}
.col4 figure {
	margin-right: 20px;
}
.col4 figure:last-child {
	margin-right: 0;
}
.page-company .access {
	padding: 0;
}
.company-table table {
}
.tbl table {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 50px;
}
.tbl table th, .tbl table td {
	padding: 10px 0 10px 20px;
	border-bottom: 1px solid #C9C9C9;
	text-align: left;
	font-size: 18px;
}
.tbl table th {
	width: 200px;
}
.history {
	margin-top: 60px;
	margin-bottom: 10px;
}
.history .ttl {
	margin-top: -120px;
}
.tbl-recruit th {
	color: #0040b6;
}

@media screen and (max-width:767px) {
.page-company .figright-img .img {
	width: auto;
	float: none;
}
.page-company .figright-img .txt {
	width: auto;
	float: none;
	margin-right: 0;
}
.company-table table {
	margin: 0 5%;
}
.main .company-table table {
	margin: 0;
}
.company-table table th, .company-table table td {
	width: auto;
	display: block;
	padding-left: 0;
	padding-right: 0;
}
.company-table table th {
	font-weight: bold;
}
.company-img {
	display: none;
}
.page-company .wide-blue {
	padding: 50px 0 30px;
	margin-bottom: 50px;
}
.philosophy {
	margin: 25px 0 50px;
	padding: 0 2.5%;
}
.wide {
	text-align: center;
	margin-bottom: 50px;
}
.w1140 {
	width: auto;
	padding: 0 2.5%;
}
.tbl table th, .tbl table td {
	display: block;
	width: auto;
	padding: 15px 20px;
}
.tbl table th {
	background-color: #EFEFF1;
}
.page-company .wide-blue-h {
	background: none;
	background-color: #0243AE;
}
.page-company .wide-blue-h figcaption {
	color: #fff;
	text-align: center;
}
.col4 {
	flex-wrap: wrap;
	justify-content: center;
}
.col4 figure {
	width: calc( (100% - 20px) / 2 );
	margin-bottom: 20px;
}
.col4 figure:nth-child(even) {
	margin-right: 0;
}
.history .ttl {
	margin-top: 0;
}
.company-mgs {
	flex: auto;
	font-size: 16px;
	padding: 50px 2.5% 35px 2.5%;
}
}
/* 事業紹介 */

.service-greeting {
	width: auto;
	min-height: 465px;
	text-align: left;
	color: #fff;
	padding: 60px 0;
	background: url("./images/service/service_img01.jpg") no-repeat top center, #0243AE;
	box-sizing: border-box;
}
.service-greeting .w1080 {
	display: flex;
}
.service-mgs {
	width: 500px;
	font-size: 18px;
	line-height: 2.4;
}
.service-mgs p {
	margin: 0;
}
.blue-txt p {
	font-size: 18px;
	color: #0243ae;
	line-height: 2.5;
	text-align: left;
}
.service-tbl {
	margin: 60px 0;
}
.service-tbl th, .service-tbl td {
}
.service-tbl th {
	background-color: #666666 !important;
	color: #fff;
	font-size: 20px;
}
.service-tbl td {
	background-color: #fff;
	font-size: 18px;
}
.service-tbl .blue {
	background-color: #0055DE;
}
.service-tbl .aqua {
	background-color: #EEF9FF;
}
.service-tbl a {
	color: #fff;
	text-decoration: underline;
}
.service-tbl a:hover {
	text-decoration: none;
}
.service-flow figure {
	text-align: left;
	margin-bottom: 80px;
	clear: both;
}
.service-flow figure img {
	float: left;
}
.service-flow figure h3 {
	display: grid;
	background-color: #0243AE;
	color: #fff;
	font-size: 24px;
	padding: 5px 0 5px 50px;
}
.service-flow figure p {
	font-size: 18px;
	display: grid;
	padding-left: 30px;
}
.service-flow figure.img-right img {
	float: right;
}
.service-flow figure.img-right h3 {
	padding-left: 20px;
}
.service-flow figure.img-right p {
	padding-left: 0;
	padding-right: 30px;
}

@media screen and (max-width:767px) {
.service-greeting {
	min-height: auto;
	text-align: left;
	color: #fff;
	padding: 60px 0;
	background-image: none;
}
.service-mgs {
	width: auto;
}
.service-flow figure img {
	float: none;
}
.service-flow figure.img-right img {
	float: none;
}
.service-flow figure h3 {
	display: block;
	padding: 5px 20px;
}
.service-flow figure p {
	font-size: 18px;
	display: block;
	padding-left: 0px;
}
.service-flow figure.img-right p {
	padding-left: 0;
	padding-right: 0;
}
.service-flow figure {
	text-align: left;
	margin-bottom: 0px;
	clear: both;
}
.service-mgs p {
	margin: 2em 0;
}
}
/* 製造紹介 */

.page-product {
}
.figleft-img .img {
	width: 472px;
	float: left;
}
.figleft-img .txt {
	width: 638px;
	float: right;
	text-align: left;
	margin-left: 30px;
}
.figleft-img .txt h3.ttl-left {
	text-align: left;
	margin-bottom: 30px;
}
.figleft-img .txt p {
	margin-bottom: 20px;
}
.figright-img .img {
	width: 500px;
	float: right;
}
.figright-img .txt {
	width: 580px;
	float: left;
	margin-right: 60px;
}

@media screen and (max-width:767px) {
.figleft-img .img {
	width: auto;
	float: none;
	margin-bottom: 30px;
}
.figleft-img .txt {
	width: auto;
	float: none;
	text-align: left;
	margin-left: 0;
}
.wide-silver {
	padding: 50px 0;
}
.figright-img .txt {
	width: auto;
	float: none;
	margin-right: 0;
}
.figright-img .img {
	width: auto;
	float: none;
}
}
/* 設備・製品紹介 */

.page-equipment {
}
.page-equipment .equip {
	background: none;
	padding: 0;
	height: auto;
}
.page-equipment .equip .equip-inner table th, .page-equipment .equip .equip-inner table td {
	color: #000;
}
.page-equipment .equip .equip-inner table thead th, .page-equipment .equip .equip-inner table thead td {
	border-bottom: 1px solid #000;
}
.page-equipment .equip .equip-inner {
	margin: 0;
}
.txt-white {
	margin: 50px 0;
}
.txt-white p {
	text-align: center;
	color: #fff;
	font-size: 20px;
}
.page-product .wide-blue-h2 {
	background-color: inherit;
	background: url(./images/product/product_bg.jpg) repeat-x 0 0;
}
.page-product .wide-blue-h3 {
	background-color: inherit;
	background: url(./images/product/product_bg2.jpg) repeat-x 0 0, #F0F0F2;
}
.equipment {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 80px 0;
}
.w1140 .equipment {
	margin-bottom: 0;
}
.equipment .equipment-cnt {
	width: calc( ( 100% - 50px ) / 2 );
	margin-right: 50px;
}
.equipment .equipment-cnt p {
	font-size: 18px;
	margin: 20px 0;
}
.col2 {
	display: flex;
}
.col2 figure {
	width: calc( ( 100% - 16px) / 2);
	margin-right: 16px;
}
.col2 figure:last-of-type {
	margin-right: 0;
}
.equipment .equipment-cnt:nth-of-type(even), .equipment .equipment-cnt:last-of-type {
	margin-right: 0;
}
.equipment .equipment-cnt table {
	width: 100%;
}
.equipment-cnt th, .equipment-cnt td {
	padding: 10px 15px;
	font-size: 20px;
}
.equipment-cnt th {
	background-color: #0040B6;
	color: #fff;
	text-align: left;
}
.equipment-cnt td {
	color: #0243AE;
	font-weight: 300;
	padding: 20px 15px;
	font-size: 18px;
}

@media screen and (max-width:767px) {
.page-product .wide-blue-h2, .page-product .wide-blue-h3 {
	background-image: none;
	background-color: #0243AE;
	color: #fff;
}
.page-product .wide-blue-h2 h3, .page-product .wide-blue-h3 h3 {
	color: #fff;
	border-bottom: 5px solid #fff;
}
.equipment {
	display: block;
	margin: 0 0 40px;
}
.equipment .equipment-cnt {
	width: auto;
	margin-right: 0;
	padding: 0 2.5%;
}
.equipment .equipment-cnt table {
	table-layout: fixed;
}
.equipment-cnt th, .equipment-cnt td {
	font-size: 16px;
	text-align: center;
}
}
/* 採用情報 */

.wide {
	width: auto;
}
.wide img {
	max-width: 100%;
	height: auto;
	width: auto;
}
.logo-right {
	text-align: right;
}
.career-data {
	width: auto;
	height: 1200px;
	text-align: center;
	padding: 100px 0;
	margin-top: 130px;
	margin-bottom: 150px;
	background: url(./images/career/career_img03.jpg) no-repeat top center;
}
.career-data .cnt {
	width: 1140px;
	margin: 0 auto;
}
.career-data .ttl {
	color: #fff;
	background: url(./images/common/h2_ttl_bar_white.png) no-repeat bottom center;
}
.page-career .data figure h3 {
	position: relative;
	width: 320px;
	height: 54px;
	line-height: 54px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	background: url(./images/career/h3_bg.png) no-repeat top center;
	margin: 0 auto -27px;
}
.page-career .data figure {
	float: left;
	width: 550px;
	margin-right: 40px;
	margin-bottom: 80px;
}
.page-career .data figure:nth-child(even) {
	margin-right: 0;
}
.page-career .data figcaption {
	margin-top: 25px;
	color: #fff;
	text-align: left;
}
.page-career .introduction {
}
.page-career .introduction figure {
	float: left;
	width: 360px;
	margin-right: 30px;
	margin-bottom: 80px;
}
.page-career .introduction figure img {
	display: block;
	margin-bottom: 24px;
	padding-bottom: 6px;
	background: url(./images/career/introduction_img_bg.jpg) no-repeat bottom left;
}
.page-career .introduction figure:nth-child(3n+3) {
	margin-right: 0;
}
.page-career .introduction figure .comment {
	margin-bottom: 30px;
}
.page-career .introduction figure .name {
	font-weight: bold;
}
.page-career .wide-silver {
	margin-top: 70px;
}
.page-career .flotation-table {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 80px;
}
.page-career .flotation-table th, .page-career .flotation-table td {
	padding: 20px 40px;
	border: none;
	font-size: 18px;
}
.page-career .flotation-table th {
	font-weight: bold;
	width: 250px;
}
.page-career .flotation-table tr:nth-child(odd) th, .page-career .flotation-table tr:nth-child(odd) td {
	background-color: #fff;
}
.page-career .step h3 {
	width: 110px;
	height: 36px;
	line-height: 36px;
	text-align: left;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	display: inline-block;
	background: url(./images/career/step_bg.png) no-repeat left top;
	box-sizing: border-box;
	padding: 0 0 0 15px;
}
.page-career .step {
	margin-bottom: 50px;
}
.page-career .step .txt {
	position: relative;
	border: 1px solid #000;
	padding: 25px;
	text-align: left;
}
.page-career .step .txt:after {
	position: absolute;
	content: "";
	width: 36px;
	height: 11px;
	left: 0;
	right: 0;
	bottom: -11px;
	margin: auto;
	background: url(./images/career/txt_bottom.png) no-repeat center bottom;
}
.page-career .step .txt h4 {
	font-size: 20px;
	color: #ff0c46;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}
.page-career .step-end {
	width: auto;
	height: 100px;
	background: url(./images/career/step_end_bg.jpg) no-repeat left top;
	text-align: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 100px;
	margin-bottom: 150px;
}
.entry-contact {
	width: auto;
	height: auto;
	text-align: center;
	padding: 90px 0 84px;
	background: url(./images/career/entry_bg.jpg) no-repeat left bottom, #F0F0F2;
}
.entry-contact .left, .entry-contact .right {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	padding: 0 30px;
}
.entry-contact .left {
	border-right: 1px solid #999999;
}
.entry-contact .left .tel {
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-size: 36px;
	padding: 0 0 0 25px;
	background: url(./images/career/tel_icon.png) no-repeat left center;
	line-height: normal;
}
.page-recruit .wide-blue-h4 {
	background-color: inherit;
	background: url(./images/recruit/recruit_bg.jpg) repeat-x top 385px left;
	min-height: 740px;
	margin-bottom: 180px;
}
.recruit-work figure {
	position: relative;
}
.recruit-work figure a {
	display: inline-block;
	background-color: #0243ae;
}
.recruit-work figure figcaption {
	position: absolute;
	right: 0;
	bottom: -72px;
	width: 330px;
	height: auto;
	color: #000;
	background-color: #fff;
	padding: 20px 30px;
	box-sizing: border-box;
}
.recruit-work figure figcaption h3 {
	font-size: 20px;
	color: #0243AE;
	border-bottom: 5px solid #0040B6;
	padding-bottom: 4px;
	margin-bottom: 18px;
}
.recruit-work figure figcaption p {
	margin: 0;
}
/* インタビュー */

.recruit-interview1,
.recruit-interview2 {
	position: relative;
	width: auto;
	height: 465px;
	background: url(./images/interview1/interview1_img01.jpg) no-repeat center top;
	text-align: right;
	margin-bottom: 100px;
}
.recruit-interview2 {
	background: url(./images/interview2/interview2_img01.jpg) no-repeat center top;
}
.recruit-interview1 .cnt,
.recruit-interview2 .cnt {
	position: absolute;
	top: 120px;
	right: 0;
	left: auto;
	width: auto;
	height: 273px;
	padding: 0 75px 45px 0;
	text-align: left;
	color: #fff;
	box-sizing: border-box;
}
.recruit-interview1 p,
.recruit-interview2 p {
	font-size: 24px;
	text-align: center;
	font-weight: bold;
	margin: 0;
}
.recruit-interview1 .interview-com,
.recruit-interview2 .interview-com {
	position: relative;
	padding: 40px;
	margin-bottom: 20px;
}
.recruit-interview1 .interview-com::before,
.recruit-interview2 .interview-com::before {
	font-size: 48px;
	content: "「";
	position: absolute;
	font-weight: normal;
	top: 0px;
	left: -30px;
}
.recruit-interview1 .interview-com::after,
.recruit-interview2 .interview-com::after {
	font-size: 48px;
	content: "」";
	position: absolute;
	font-weight: normal;
	bottom: 0px;
	right: -30px;
}
.recruit-interview-cnt h3 {
	font-size: 24px;
	margin-bottom: 0;
}
.recruit-interview-cnt h3 span {
	font-size: 18px;
}
.recruit-interview-msg h3 {
	border: none;
	font-size: 26px;
	text-align: left;
	color: #0040B6;
	margin-bottom: 40px;
}
.recruit-interview-msg h3 span {
	font-weight: 300;
}
.recruit-interview-msg .col2 {
	margin-bottom: 150px;
}
.recruit-interview-msg .col2 figure {
	flex-basis: 540px;
}
.recruit-interview-msg .col2 .msg {
	flex-basis: 570px;
	text-align: left;
	margin-left: 30px;
}
.recruit-interview-msg .col2 .msg p {
	margin-top: 0;
	font-size: 18px;
}
.recruit-interview-msg .order-right figure {
	order: 2;
}
.recruit-interview-msg .order-right .msg {
	order: 1;
	margin-left: 0;
	margin-right: 30px;
}
.recruit-end-h {
	background: url(./images/interview1/interview1_img05.jpg) repeat-x center top 236px;
	padding-bottom: 96px;
}


.recruit-end-h .end-msg {
justify-content: center;
  align-items: center;
	background-color: #fff;
}

.recruit-end-h .end-msg figure {
	flex-basis: 540px;
	background-color: #fff;
	text-align: left;
}
.recruit-end-h .end-msg .msg {
	flex-basis: 600px;
	padding: 0 0 0 30px;
	background-color: #fff;
	box-sizing: border-box;
}
.recruit-end-h .end-msg .msg p {
	font-size: 20px;
	text-align: left;
}
.wide-silver-min {
	padding: 40px 0;
}
.head-nav {
	display: flex;
	justify-content: center;
	align-items: center;
}
.head-nav li {
	flex-basis: 295px;
	background-color: #fff;
	border: 2px solid #0243AE;
	color: #0243AE;
	text-align: center;
	font-size: 18px;
	margin: 0 7px;
}
.head-nav li a {
	display: block;
	padding: 15px 0px;
	color: #0243AE;
	background: url(./images/common/details_icon_blue.png) no-repeat right 15px center, #fff;
}
.head-nav li.on a {
	background-color: #0040B6;
	color: #fff;
}
.head-nav li a:hover {
	text-decoration: underline;
}

@media screen and (max-width:767px) {
.career-data .cnt {
	width: auto;
	padding: 0 5%;
}
.page-career .data figure {
	float: none;
	width: auto;
	margin-right: 0;
	margin-bottom: 40px;
}
.career-data {
	height: auto;
	background-size: auto 100%;
}
.page-career .introduction figure {
	float: none;
	width: auto;
	margin-right: 0;
	margin-bottom: 40px;
}
.page-career .introduction figure img {
	text-align: center;
}
.page-career .wide-silver .cnt {
	width: auto;
	padding-top: 70px;
}
.page-career .flotation-table th, .page-career .flotation-table td {
	width: auto;
	display: block;
	padding: 0 15px;
}
.page-career .flotation-table td {
	font-size: 15px;
}
.page-career .flotation-table th {
	padding: 20px 15px 5px 15px;
}
.page-career .flotation-table td {
	padding: 5px 15px 20px 15px;
}
.page-career .company-table table {
	margin: 0 0 40px 0;
}
.entry-contact .left, .entry-contact .right {
	display: block;
	padding: 30px 0;
}
.entry-contact .left {
	display: block;
	border-right: none;
	border-bottom: 1px solid #999999;
	text-align: center;
}
.entry-contact {
	width: auto;
	height: auto;
	text-align: center;
	padding: 40px 20px 40px;
}
.entry-contact .left .tel {
	display: inline-block;
}
.figleft-img .txt p.logo-right {
	margin-bottom: 100px;
}
.figleft-img .txt p.logo-right img {
	width: 50%;
	height: auto;
}
/* インタビュー */
	
.page-recruit .wide-blue-h4 {
	background-color: inherit;
	background: none;
	min-height: inherit;
	margin-bottom: 0;
	padding-bottom: 75px;
	background-color: #0243AE;
}
.page-recruit .wide-blue-h4 h2.ttl {
	color: #fff;
}
.recruit-work .col2 {
	display: block;
}
.recruit-work .col2 figure {
	width: auto;
	margin-right: 0;
}
.recruit-work figure figcaption {
	position: relative;
	right: auto;
	bottom: auto;
	width: auto;
	height: auto;
}
.recruit-work figure figcaption p {
	margin: 0;
	color: #000;
	text-align: left;
}
.page-template-recruit-page .history {
	margin: 0;
}
.head-nav {
	display: block;
}
.head-nav li {
	flex-basis: auto;
	margin: 0 0 5px 0;
}
.recruit-interview1,
.recruit-interview2 {
	position: relative;
	width: auto;
	height: auto;
	background: none;
	text-align: left;
	margin-bottom: 50px;
	background-color: #0040B6;
}
.recruit-interview1 .cnt,
.recruit-interview2 .cnt {
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	width: auto;
	height: auto;
	padding: 50px 20px;
}
.recruit-interview1 .interview-com::before,
.recruit-interview2 .interview-com::before {
	left: 0;
}
.recruit-interview1 .interview-com::after,
.recruit-interview2 .interview-com::after {
	right: 0;
}
	.recruit-interview-cnt .interview-com p br {
		display: none;		
	}
.recruit-interview-cnt h3 {
	text-align: center;
}
.recruit-interview1 .interview-com,
.recruit-interview2 .interview-com {
	padding: 20px 0;
	margin-bottom: 0;
}
.recruit-interview-msg .col2 {
	margin-bottom: 50px;
	display: block;
}
.recruit-interview-msg .col2 figure {
	flex-basis: auto;
	width: auto;
	margin-bottom: 30px;
}
.recruit-interview-msg .col2 .msg {
	flex-basis: auto;
	text-align: left;
	margin-left: 0;
	margin-right: 0;
}
.recruit-end-h .end-msg .msg p {
    margin-top: 0;
}
.recruit-end-h .col2 {
	display: block;
}
.recruit-end-h .end-msg figure {
	flex-basis: auto;
	background-color: #fff;
	text-align: left;
	width: auto;
}
.recruit-end-h .end-msg .msg {
	flex-basis: auto;
	padding: 30px 20px;
	background-color: #fff;
	box-sizing: border-box;
}
.recruit-end-h {
	background: none;
	padding-bottom: 0px;
}
}
/* お問い合わせ */

.w1080 {
	width: 1080px;
	margin: 0 auto;
}
.entry-content {
	padding-top: 500px;
}
.page-contact-test .main-txt, .page-contact .main-txt, .page-career-form .main-txt {
	margin-bottom: 20px;
	text-align: center;
	font-size: 18px;
}
.page-contact-test .main-txt, .page-contact .main-txt, .page-career-form .main-txt {
	font-size: 18px;
}
.page-contact-test table, .page-contact table, .page-career-form table {
	width: 100%;
	table-layout: fixed;
}
.page-contact-test table th, .page-contact table th, .page-career-form table th {
	width: 200px;
	font-weight: bold;
}
.page-contact-test table th, .page-contact-test table td, .page-contact table th, .page-contact table td, .page-career-form table th, .page-career-form table td {
	padding: 25px 20px;
	text-align: left;
	vertical-align: top;
	font-size: 18px;
	font-weight: 500;
}
.page-contact-test table tr:nth-child(odd) th, .page-contact-test table tr:nth-child(odd) td, .page-contact table tr:nth-child(odd) th, .page-contact table tr:nth-child(odd) td, .page-career-form table tr:nth-child(odd) th, .page-career-form table tr:nth-child(odd) td {
	background-color: #EFEFF1;
	font-size: 18px;
	font-weight: 500;
}
.main input, .main select {
	border: solid 1px #999999;
	border-radius: 0;
	box-shadow: none;
	padding: 8px;
	margin: 3px;
	vertical-align: middle;
}
.submit-bt {
	text-align: center;
	margin: 20px 0;
}
.submit-bt input {
	padding: 15px 80px;
	font-size: 16px;
	background: url(./images/common/details_icon.png) no-repeat right 15px center, #0040b6;
	border: none;
	color: #fff;
	font-weight: 600;
	cursor: pointer;
}
.txt-c {
	text-align: center !important;
}

@media screen and (max-width:767px) {
.w1080 {
	width: auto;
}
.page-contact table th, .page-contact table td, .page-career-form table th, .page-career-form table td {
	width: 100%;
	display: block;
	padding: 15px 0;
	font-size: 16px;
}
.page-contact table tr:nth-child(odd) th, .page-contact table tr:nth-child(odd) td, .page-career-form table tr:nth-child(odd) th, .page-career-form table tr:nth-child(odd) td {
	background-color: #fff;
}
.page-contact table th, .page-career-form table th {
	padding-left: 20px;
	background-color: #EFEFF1 !important;
}
.page-contact-test .main-txt, .page-contact .main-txt, .page-career-form .main-txt {
	font-size: 14px;
}
.main input, .main select, .main textarea {
	width: auto;
	max-width: 100%;
}
textarea {
	width: auto;
	max-width: 100%;
}
.entry-content {
	padding-top: 300px;
}
.page-template-company-page .entry-content, .page-template-product-page .entry-content, .page-template-service-page .entry-content, .page-template-recruit-page .entry-content, .page-template-interview1-page .entry-content, .page-template-interview2-page .entry-content {
	padding-top: 260px;
}
}
/* トピックス */

.archive .topics-cnt, .category .topics-cnt, .single .topics-cnt {
	width: 1140px;
	margin: 0 auto 200px;
}
.topics-cnt article {
	width: auto;
	margin: 50px 0 0 0;
	background: url(./images/topics/entry_head_bg.jpg) no-repeat left top;
}
.topics-cnt header.header {
	display: none;
}
.topics-cnt article header {
	text-align: left;
}
.topics-cnt article .entry-title {
	font-size: 26px;
	font-weight: bold;
	padding: 40px 0;
	border-bottom: 1px solid #ddd;
}
.blog-left {
	float: left;
	width: 720px;
}
#sidebar {
	width: 300px;
	float: right;
	background-color: #F0F0F2;
	padding: 50px 40px;
	text-align: left;
}
.entry-summary {
	margin: 50px 0;
}
.entry-meta {
	text-align: right;
}
.entry-footer {
	display: none;
}
.widget_categories h3 {
	margin: 20px 0 0;
}
.xoxo ul li {
	margin-bottom: 10px;
}

@media screen and (max-width:767px) {
.blog-left {
	float: none;
	width: auto;
}
#sidebar {
	width: auto;
	float: none;
	background-color: #F0F0F2;
	padding: 50px 40px;
	text-align: left;
}
.archive .topics-cnt, .category .topics-cnt, .single .topics-cnt {
	width: auto;
	margin: 0 auto 200px;
	padding: 0 5%;
}
}
/* フッター */

#footer {
	width: auto;
	padding: 0;
	background: linear-gradient(90deg, #313131 0%, #313131 40%, #434343 40%, #434343 100%);
	text-align: center;
	color: #fff;
}
#footer a:hover {
	text-decoration: underline;
}
#footer .cnt {
	width: 1140px;
	margin: 0 auto;
	text-align: left;
}
#footer .footer-logo {
	font-size: 24px;
	margin-bottom: 10px;
}
.footer-left, .footer-right {
	float: left;
	text-align: left;
}
.footer-left {
	width: 482px;
	padding: 45px 0;
}
.footer-right {
	width: 658px;
	padding-left: 80px;
	padding: 45px 0;
}
.footer-right ul {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-right: 70px;
}
.footer-right ul:last-child {
	margin-right: 0;
}
.footer-right ul li {
	margin-bottom: 10px;
	color: #fff;
}
.footer-right ul li a {
	color: #fff;
}
.footer-info li {
	margin-bottom: 3px;
}
.footer-right ul li ul {
	display: block;
	margin-top: 10px;
	margin-left: 10px;
}
.footer-right ul li ul li {
	font-size: 14px;
	margin-bottom: 5px;
}
.footer-info li.address, .footer-info li.tel, .footer-info li.fax {
	padding: 0 0 0 28px;
	background: url(./images/common/footer_address_icon.png) no-repeat left center;
}
.footer-info li.tel {
	background: url(./images/common/footer_tel_icon.png) no-repeat left center;
}
.footer-info li.fax {
	background: url(./images/common/footer_fax_icon.png) no-repeat left center;
}
.footer-enq {
	float: right;
}
#copyright {
	padding: 20px 0;
	width: auto;
	height: auto;
	clear: both;
	text-align: center;
}

@media screen and (max-width:767px) {
#footer {
	padding: 45px 0 20px;
	background: none;
	background-color: #313131;
}
#footer .cnt {
	width: auto;
}
.footer-left, .footer-right {
	width: auto;
	float: none;
	text-align: left;
	padding: 0 5% 30px;
	border: none;
}
.footer-right {
	width: auto;
	float: none;
	text-align: left;
	padding: 0 0 30px;
	border: none;
}
.footer-right ul {
	display: block;
	vertical-align: top;
	text-align: left;
	margin-right: 0;
}
.footer-right ul li {
	margin-bottom: 0;
	float: none;
	width: auto;
	text-align: left;
	padding-left: 5%;
	border-bottom: 1px solid #ccc;
}
.footer-right ul li ul {
	margin-top: 0;
}
.footer-right ul:last-child {
	margin-left: 0;
}
.footer-right ul li a {
	display: block;
	padding: 10px 0;
}
.footer-right ul li a:before {
	content: ">";
	margin-right: 5px;
}
.footer-enq {
	float: none;
	text-align: center;
	margin-bottom: 40px;
}
.footer-right ul li ul {
	border: none;
}
.footer-right ul li ul li {
	font-size: 14px;
	margin-bottom: 5px;
	float: none;
	width: auto;
	border-bottom: none;
}
.footer-right ul li ul li a {
	padding: 5px 0;
}
}
/* ページトップ */

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 2;
}
#page-top a {
	width: 63px;
	text-align: center;
	display: block;
}
#page-top a:hover {
}
.sp-br {
	display: none;
}

	#voice,
	#msg,
	#philosophy,
	#workplace,
	#profile {
/*	    padding-top: 30px;
	    margin-top: -30px;*/
	}

@media screen and (max-width:767px) {
.sp-br {
	display: block;
}
.sp-nobr {
	display: none;
}
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
		
@-webkit-keyframes modify{
      0% { padding-top: 100px; margin-top: -100px; }
    100% { padding-top: 0; margin-top: 0; }
}
@keyframes  modify{
      0% { padding-top: 100px; margin-top: -100px; }
    100% { padding-top: 0; margin-top: 0; }
}

	#voice::target,
	#msg::target,
	#philosophy::target,
	#workplace::target,
	#profile::target,
	#history::target {
    	-webkit-animation: modify 0.1s;
    	animation: modify 0.1s;
	}
	
}
.entry-content .mb0 {
	margin-bottom: 0;
}
.entry-content .mb75 {
	margin-bottom: 75px;
}
/* cf */

.cf:before, .cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
 *zoom: 1;
}
