@charset "UTF-8";

@import url('module.css');

#pg-titbar{
	display:none;
}

/* =====================================================================
reset
======================================================================== */
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
article, header, footer, aside, figure, figcaption, nav, section {
	display: block;
}
body {
	line-height: 1;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
ol, ul {
	list-style: none;
	list-style-type: none;
}
strong, em, b {
	font-weight: bold;
}

/* =====================================================================
base
======================================================================== */
html {
	font-size: 10px;
}
body {
	line-height: 1.875;
	font-size: 1.6em;
	/* font-family:"Microsoft YaHei","微软雅黑","Helvetica Neue",Helvetica,Arial,sans-serif,"SF Pro SC","SF Pro Text","SF Pro Icons"; */
	font-family:Helvetica, 'Hiragino Sans GB', 'Microsoft Yahei', '微软雅黑', Arial, sans-serif;
	color: #000;
}

img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
em {
	font-style: normal;
	font-weight: bold;
}

@media screen and (max-width: 959px) {
body {
	font-size: 1.4em;
}
}

@media screen and (max-width: 559px) {
body {
	font-size: 1.2em;
}
}

/* =====================================================================
font
===================================================================== */
b,strong,em,.bold {
}

/* =====================================================================
link
===================================================================== */
a {
	text-decoration: none;
	color: #de0a20;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a:hover, a:focus, a:active {
	text-decoration: underline;
}
a img {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a img:hover {
	opacity: 0.8;
}
a.expand .image {
	overflow: hidden;
}
a.expand:hover .image img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
a.expand .image img {
	-webkit-transition: -webkit-transform .4s;
	transition: transform .4s;
	will-change: transform;
}

/* =====================================================================
form
===================================================================== */
button {
	background: none;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}

/* =====================================================================
page
===================================================================== */
.page {
}


/* =====================================================================
header
===================================================================== */
header {
	position: relative;
	width: 100%;
	z-index: 100;
}

@media screen and (max-width: 959px) {
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 58px;
	background: #fff;
}
}
header a {
	color: #000;
}

.sticky {
	-webkit-box-shadow: 0 1px 3px rgba(0,0,0,.1);
	box-shadow: 0 1px 3px rgba(0,0,0,.1);
}


@media screen and (min-width: 960px) {
.sticky {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 58px;
-webkit-box-shadow: 0 1px 3px rgba(0,0,0,.1);
box-shadow: 0 1px 3px rgba(0,0,0,.1);
}
}

.nav-location {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

@media screen and (max-width: 959px) {
.nav-location {
	display: none;
}
}
.lnav {
	display: flex;
	justify-content: flex-end;
	font-size: 1.2rem;
}
.lnav > li {
	display: flex;
	position: relative;
	padding: 0 18px;
}
.lnav > .lang > a:before {
	display: inline-block;
	content: '';
	margin-right: 5px;
	background-image: url(../images/icon-earth.svg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 14px;
	height: 14px;
	vertical-align: text-top;
}
.lnav > li > a {
	display: block;
	line-height: 58px;
}
.langlist:before {
	content: "";
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-bottom: 10px solid #ececec;
}
.langlist {
	display: none;
	position: absolute;
	top: 58px;
	left: 0;
	margin: 0 -18px;
	padding: 20px 10px;
	background: #ececec;
	width: 160px;
	z-index: 1;
}

.langlist > li {
	position: relative;
}
.langlist > li > a {
	line-height: 26px;
	padding-left: 1em;
}
.langlist > li > a:before {
	content: '';
	position: absolute;
	top: 50%;
	display: block;
	right: 10%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #de0a20;
	border-right: 2px solid #de0a20;
	margin-top: -4px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#search-trigger-btn {
	font-size: 100%;
}
#search-trigger-btn:before {
	content: '';
	display: inline-block;
	background-image: url(../images/icon-loupe.svg);
	background-repeat: no-repeat;
	background-size: contain;
	margin-bottom: -2px;
	margin-right: 5px;
	width: 13px;
	height: 13px;
}

/* global-navi------------------------------------------------------ */
.header-short {
	background: #FFF;
	border-bottom: 1px solid #ccc;
}

.header-short-inner {
	position: relative;
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 959px) {
.header-short-inner {
	display: block;
	text-align: center;
}
}


/* logo-------------------------------------------------------- */
.header-logo {
	position: absolute;
	left: 45px;
	bottom: 0;
	padding-bottom: 40px;
	/* width: 265px; */
	width: 283px;
	line-height: 1;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	z-index: 9999;
}
.header-logo img {
	max-width: 100%;
	height: auto;
}
.sticky .header-logo {
	padding-bottom: 10px;
	width: 230px;
}

@media screen and (max-width: 959px) {
.header-logo {
	position: inherit;
	display: inline-block;
	bottom: inherit;
	left: inherit;
	padding: 0;
	height: 58px;
	transition: none;
}
.header-logo img {
	position: relative;
	top: 50%;
	z-index: 1;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.sticky .header-logo {
	padding-bottom: 0;
}
}

@media screen and (max-width: 559px) {
.header-logo img {
	width: 180px;
}
}
.nav-global {
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

@media screen and (max-width: 959px) {
.nav-global {
	display: block;
}
}
.gnav {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 959px) {
.gnav {
	display: none;
}
}
.gnav > li:not(:first-child) {
	margin-left: 58px;
}

@media screen and (max-width: 1169px) {
.gnav > li:not(:first-child) {
	margin-left: 20px;
}

.gnav > li:not(:last-child) {
	font-size: 1.4rem;
}

}

@media screen and (max-width: 959px) {
.header-short {
	background: none;
}
}
.gnav > li {
	height: 58px;
}
.gnav > li > a {
	display: block;
	text-decoration: none;
	line-height: 58px;
}
.gnav > li:not(:last-child):hover, .gnav > li:not(:last-child).current {
	border-bottom: 2px solid #de0a20;
}
.gnav > li.dropdwn {
	cursor: pointer;
}
.gnav > li.dropdwn > a {
	pointer-events: none;
}
.h-download {
	margin: 0;
}

    @media screen and (max-width: 959px) {
    .h-download {
        display: none;
    }
    }
.h-download a, .h-download a:hover {
	display: block;
	width: 190px;
	height: 58px;
	line-height: 58px;
	padding: 0 0 0 1.3em;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	background-color: #de0a20;
	/* background-image: url(../images/icon-file-download.svg); */
	background-image: url(../images/icon-tel-mail-s-w.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 22px 23px;
	font-size: 1.4rem;
}
.h-download a:hover {
	background-color: #F09D9E;
}

.gnav .dropdwn > a:after {
    display: inline-block;
    margin: 0 0 5px 10px;
    content: "";
    vertical-align: middle;
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
		border-right: 2px solid #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}


/* submenu---------------------------------------------------------- */
.dropdwn-panel {
	display: none;
	position: absolute;
	top: 58px;
	right: 0;
	left: 0;
	margin: auto;
	width: 83%;
}
.dropdwn-close {
	float: right;
	position: relative;
	width: 30px;
	height: 30px;
	margin: 18px 24px 0 0;
	cursor: pointer;
}
.dropdwn-close::after {
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-image: url(../images/icon-close-w.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: cover;
	cursor: pointer;
}
.dropdwn-panel .submenu {
	background: #1c4169;
	color: #FFF;
}
.dropdwn-panel .submenu, .dropdwn-panel .submenu a {
	color: #FFF;
}
.submenu__content {
	padding: 4%;
}
.submenu__content__title {
	padding-top: 30px;
}
.submenu__content__title span {
	display: inline-block;
	float: right;
}
.submenu__content__list {
	clear: both;
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.submenu__content__list.item4 > li {
	width: 23%;
}
.submenu__content__list.item5 > li {
	width: 17%;
}
.submenu__content__list.item6 > li {
	width: 15%;
}
.submenu__content__list > li img {
	width: 100%;
}
.submenu__content__list dl dt {
	padding: .6em 0 .2em;
	font-size: 1.6rem;
}
.submenu__content__list dl dt.nlh {
	line-height: 1.2
}
.submenu__content__list dl dd {
	/* padding-left: 1.4em; */
	font-size: 1.2rem;
}

/* add for a lot of line */
/* .submenu__content__list dl dd{
	padding-top: 10px;
	line-height: 1.1;
} 

	@media screen and (min-width: 1136px) {
	.dropdwn-panel {
		width: 1136px;
	}
	.submenu__content__list dl dt {
		font-size: 1.6rem;
	}
	.submenu__content__list dl dd {
		font-size: 1.4rem;
	}
	} */



@media screen and (min-width: 1136px) {
.dropdwn-panel {
	width: 1136px;
}
.submenu__content__list dl dt {
	font-size: 1.6rem;
}
.submenu__content__list dl dd {
	font-size: 1.4rem;
}
}

@media screen and (max-width: 1335px) {
}

@media screen and (max-width: 959px) {
.dropdwn-panel .submenu {
	display: none;
}
}

/* 検索ボックス------------------------------------------------------------ */
.search-box {
	clear: both;
	display: none;
	width: 100%;
	background-color: #ececec;
	padding: 14px 0;
}
.search-box form {
	display: flex;
	justify-content: center;
	align-items: center;
	clear: both;
	overflow: hidden;
	margin-right: auto;
	margin-left: auto;
	width: 90%;
	max-width: 1366px;
}
form .search-button, form .search-text {
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height: 42px;
}
input[type="text"] {
	padding: 0 15px;
}
 input::placeholder {
 color: #acacac;
}
.search-box .search-button {
	width: 200px;
	background: #de0a20;
	color: #FFF;
}
.search-box .search-text {
	width: calc(100% - 250px);
}
.search-close-btn {
	height: 42px;
	cursor: pointer;
}
.search-close-btn:before {
	content: '';
	display: inline-block;
	margin: 9px 0 0 20px;
	width: 24px;
	height: 24px;
	background-image: url(../images/icon-close.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: cover;
	cursor: pointer;
}

/* sp menu------------------------------------------------------------------- */
@media screen and (min-width: 960px) {
.sp-header {
	display: none;
}
}
.sp-header {
	width: 100%;
	height: 58px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
}

.drawer-checkbox {
	display: none;
}
.drawer-icon {
	position: fixed;
	display: block;
	width: 58px;
	height: 58px;
	line-height: 58px;
	cursor: pointer;
	z-index: 3;
}
.drawer-menu {
	z-index: 2;
	top: 58px;
	background: #f6f6f6;
	max-width: 100%;
	width: 100%;
	height: 100vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
}

/*ドロワー 右側---------------------------------------------------------*/
.r-drawer {
	position: relative;
}
.r-drawer__icon {
	right: 0;
}
.r-drawer__icon-parts, .r-drawer__icon-parts:before, .r-drawer__icon-parts:after {
	background-color: #de0a20;
	display: block;
	width: 26px;
	height: 2px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.r-drawer__icon-parts:before, .r-drawer__icon-parts:after {
	content: " ";
}
.r-drawer__icon-parts:before {
	top: 16px;
}

@media screen and (min-width: 560px) and (max-width: 960px) {
.r-drawer__icon-parts:before {
	top: 10px;
}
}

.r-drawer__icon-parts:after {
	top: -16px;
}
.r-drawer__menu {
	right: -100%;
}
.r-drawer__checkbox:checked ~ .r-drawer__icon:before {
	display: block;
	content: " ";
	width: 37px;
	height: 37px;
	background: #de0a20;
	position: absolute;
	right: 11px;
	top: 11px;
	border-radius: 50%;
}
.r-drawer__checkbox:checked ~ .r-drawer__icon .r-drawer__icon-parts {
	background: transparent;
}
.r-drawer__checkbox:checked ~ .r-drawer__icon .r-drawer__icon-parts:before {
	background-color: white;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 0;
}
.r-drawer__checkbox:checked ~ .r-drawer__icon .r-drawer__icon-parts:after {
	background-color: white;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0;
}
.r-drawer__checkbox:checked ~ .r-drawer__menu {
	right: 0;
}
.r-drawer__icon-parts, .r-drawer__icon-parts:after, .r-drawer__icon-parts:before, .r-drawer__menu {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.r-drawer__menu__inner {
	padding: 35px;
}
.gnav-sp-wrap {
	padding: 30px 0 35px;
	display: flex;
	justify-content: space-between;
}
.gnav-sp-container {
	width: 46%;
	border-bottom: 1px solid #f6f6f6;
}
.gnav-sp > li {
	border-top: 1px solid #f6f6f6;
	line-height: 44px;
}
.gnav-sp li a {
	display: block;
	font-weight: bold;
}
.gnav-sp li > ul >li:before {
	content: "";
	position: absolute;
	top: .8em;
	left: 1px;
	display: block;
	width: 6px;
	height: 6px;
	border-top: 2px solid #de0a20;
	border-right: 2px solid #de0a20;
	-webkit-transform: rotate(45deg);
}
.gnav-sp li > ul li {
	position: relative;
	padding-left: 20px;
}
.gnav-sp li > ul li {
	/* line-height: 30px; */
	line-height: 23px;
	padding-top: 5px;
}
.local-nav {
	border-top: 1px solid #f6f6f6;
	margin-top: 1em;
	padding-top: 1em;
}
.local-nav li {
	padding: 5px 0;
	line-height: 1.3;
	font-size: 1.2rem;
}
.local-nav li a {
	color: #000;
}
.info-tel {
	border: 1px solid #e7e7e7;
	padding: 1.5em;
	line-height: 1.6;
	min-width: 300px;
	width: 85%;
	margin: auto;
}
.info-tel em {
	font-size: 1.6em;
}
.info-tel em:before {
	content: "";
	display: inline-block;
	width: 17px;
	height: 23px;
	vertical-align: middle;
	background-image: url(../images/icon-phone.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

/* 検索  sp---------------------------------------------------------------*/
.search-box-sp form {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%
}
.search-box-sp .search-text, .search-box-sp .search-button {
	height: 34px;
}
.search-box-sp .search-text {
	width: calc(100% - 30px);
}
.search-box-sp .search-button {
	display: inline-block;
	width: 30px;
	background-color: #FFF;
	background-image: url(../images/icon-loupe-red.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: 15px 15px;
	cursor: pointer;
}
/*ドロワー 左側-------------------------------------------------------------*/
.l-drawer {
	position: relative;
}
.l-drawer__icon {
	left: 0;
	text-align: center;
}
.l-drawer__icon:before {
	display: inline-block;
	content: '';
	margin-right: 5px;
	background-image: url(../images/icon-earth-red.svg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 24px;
	height: 24px;
	vertical-align: middle;
}
.l-drawer__menu {
	left: -100%;
}
.l-drawer__checkbox:checked ~ .l-drawer__icon:before {
	background-image: url(../images/icon-close.svg);
}
.l-drawer__checkbox:checked ~ .l-drawer__menu {
	left: 0;
}
.l-drawer__icon-parts, .l-drawer__icon-parts:after, .l-drawer__icon-parts:before, .l-drawer__menu {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.l-drawer__menu__inner {
	padding: 20px;
}
.langlist-sp {
	margin: auto;
	width: 300px;
	text-align: center;
	line-height: 40px;
}


/* =====================================================================
Main
===================================================================== */
#contents {
	position: relative;
}

@media screen and (max-width: 959px) {
#contents {
	padding-top: 60px;
}
}
.inner {
	clear: both;
	overflow: hidden;
	margin-right: auto;
	margin-left: auto;
	padding: 0 50px;
	width: 100%;
	max-width: 1136px;
}

@media screen and (max-width: 559px) {
.inner {
	padding: 0 30px;
}
}


.section {
	position: relative;
	overflow: hidden;
	width: 100%;
}



/* =====================================================================
heading
===================================================================== */

h1, .h1 {
	font-size: 3.2rem;
	font-weight: bold;
}
h2, .h2 {
	font-size: 3.0rem;
	font-weight: bold;
}
h3, .h3 {
	font-size: 2rem;
	margin-bottom: 0.4em; /*yoshio*/
	font-weight: bold;
	line-height: 1.4;
}
h3.h3-s{
	font-size: 1.7rem;
	margin-bottom: 0.4em; /*yoshio*/
	font-weight: bold;
	line-height: 1.4;

}

h4 {
	font-weight: bold;
}
h5 {
	font-weight: 1.6rem;
}

@media screen and (max-width: 959px) {
h1, .h1 {
	font-size: 2.6rem;
}
h2, .h2 {
	font-size: 2.6rem;
}
h3, .h3 {
	font-size: 1.6rem;
}
}

@media screen and (max-width: 559px) {
h1 {
	font-size: 2.2rem;
}
h2, .h2 {
	font-size: 2.0rem;
}
}
.title {
	position: relative;
	margin-bottom: 0.7em;
	padding-top: 2.2em;
	font-size: 3rem;
	line-height: 1.3;
	font-weight: bold;
	letter-spacing: -0.02em;
}

@media screen and (max-width: 959px) {
.title {
	font-size: 2.6rem;
}
}

@media screen and (max-width: 414px) {
.title {
	font-size: 2.0rem;
}
}
.title.line {
	position: relative;
	margin-bottom: 1.5em;
	padding-top: 1.0em;
	text-align: center;
}
.title.line:before {
	content: '';
	position: absolute;
	bottom: -0.5em;
	display: inline-block;
	width: 28px;
	height: 2px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #de0a20;
}
.title.line + .lead {
	text-align: center;
}
.title + .lead {
	margin-bottom: 3.3em;
}


.ttl-border {
	margin-bottom: 1.2em;
	border-bottom: 1px solid #C5C5C5;/*yoshio*/
	padding-bottom: 0.8em;
	line-height: 1.4;
}
.ttl-border-nmb {
	margin-bottom: 0.3em;
	border-bottom: 1px solid #C5C5C5;/*yoshio*/
	padding-bottom: 0.8em;
	line-height: 1.4;
}
.ttl-border-l {
	padding: 0 1em;
	border-left: 2px solid #de0a20;
}

.ttl-border-l.h3 {
	 margin-bottom: 0.6em; /*yoshio*/
}

.ttl-border-none{
	margin-bottom: 1em;
	line-height: 1.4;
}

.ex-ttl-product{
	position: absolute;
	top: 250px;
	left: 100px;
}

p {
	margin-bottom: 1.4em;
	line-height: 1.875;
	word-break: break-all;
}
small {
	font-size: 1rem;
}



/* =====================================================================
breadcrumb
===================================================================== */

.breadcrumb {
	padding: 18px 30px;
 	border-bottom: 1px #E8E8E8 solid; 	/*yoshio*/
	line-height: 1.15;
	font-size: 1.2rem;
}

main .breadcrumb:last-child {
	border-top: 1px #f6f6f6 solid;
}

.breadcrumb>ol {
	margin-right: auto;
	margin-left: auto;
	max-width: 1140px;
}
.breadcrumb>ol>li {
	position: relative;
	display: inline;
	line-height: 1.5;
}
.breadcrumb>ol>li:not(:last-child):before, .breadcrumb>ol>li:not(:last-child):after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 7px;
	height: 1px;
	background-color: #000;
	-webkit-transform-origin: center right;
	transform-origin: center right;
}
.breadcrumb>ol>li:before {
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
}
.breadcrumb>ol>li:after {
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg);
}
.breadcrumb>ol>li>a, .breadcrumb>ol>li>em {
	font-weight: normal;
}
.breadcrumb>ol>li>a {
	margin-right: 32px;
}

    @media screen and (max-width: 959px) {
        .breadcrumb {
            padding: 13px 30px;
            font-size: 1.2rem;
        }
    }

    @media screen and (max-width: 414px) {
        .breadcrumb {
            padding: 13px 1.5em;
            font-size: 1.0rem;
        }
        .breadcrumb > ol > li > a {
          margin-right: 28px;
        }
        .breadcrumb>ol>li:not(:last-child):before, .breadcrumb>ol>li:not(:last-child):after {
            top: 40%;
            width: 5px;
        }
    }

    @media screen and (max-width: 320px) {
        .breadcrumb {
            font-size: .9rem;
        }
    }






/* =====================================================================
トップページ - メインヴィシュアル
===================================================================== */
#top-main {
	display: flex;
	width: 100%;
	height: 380px;
	background-image: url(../images/main/01.jpg);
	/* background-image: url(../images/main/02-11.jpg); */
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

	@media screen and (max-width: 414px) {
	#top-main {
		height: 280px;
	}
	}

.main-visual-container{
	display: flex;
	justify-content: center;
	align-items: center;
}

#top-main #slogan {
	margin-top: -66px;
	padding: 15px 25px;
	background:  rgba(254,251,251,0.8);
}

#top-main #slogan h1 {
	font-size: 3.2rem;
	line-height: 1.2;
	margin-bottom: 0;
	font-weight: bold;
	letter-spacing: 0.1em;
}

#top-main #slogan strong {
	color: #de0a20;
}
		/* before799px */
	@media screen and (max-width: 559px) {
	#top-main #slogan {
		padding: 10px 20px;
	}
		#top-main #slogan h1 {
		font-size: 6vw;
	}
	}

/* news slider-------------------------------------- */
#news-slider{
	width: 100%;
	display: flex;
	align-items: center;
	margin-top: -70px;
	height: 70px;
	padding: 0 20px;
	background:  rgba(254,251,251,0.85);
}

#news-slider .date{
	margin-right: 2em;
	padding: 1em;
	background: #000;
	color: #fff;
}

#news-slider ul{
	width: calc(100% - 61px);
}

#news-slider ul li{
	font-weight: bold;
	font-size: 1.4rem;
}

#news-slider .control{
	width: 61px;
	height: 30px;
}

#news-slider .control span{
	position: relative;
	display: block;
	float: left;
	background: #000;
	width: 30px;
	height: 30px;
	line-height: 26px;
	color: #fff;
	text-align: center;
	cursor: pointer;
}

#news-slider .control .prev:before,
#news-slider .control .next:before{
	position: absolute;
	top: 10px;
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
}

#news-slider .control .next{
	margin-left: 1px;
}

#news-slider .control .prev:before{
	left: 13px;
	border-top: 2px solid #FFF;
	border-left: 2px solid #FFF;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#news-slider .control .next:before{
	right: 13px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


	@media screen and (max-width: 799px) {
	#news-slider ul li{
		font-size: 1.2rem;
	}
	#news-slider .date{
		margin-right: 1em;
		padding: 1em;
		font-size: 1rem;
	}
	}

	@media screen and (max-width: 559px) {
	#news-slider{
		padding: 0 10px;
	}
	#news-slider .date{
		float: left;
		margin-right: 1em;
		padding: 5px;
	}
	}


	@media screen and (max-width: 414px) {
		#news-slider{
			height: 70px;
		}
	#news-slider ul li{
		font-size: 1.0rem;
	}
	}



/* =====================================================================
	トップページ
===================================================================== */
.top-cir-w-btn {
    border: 2px solid #de0a20;
	background: #fff;
	color: #de0a20;
	border-radius: 30px;
    margin-top:100px;
}
.top-cir-w-btn:hover {
	background: #de0a20;
	color: #fff;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}


.top-cir-w-btn > span {
	display: block;
	position: relative;
	padding: 0 1em;
}
.top-cir-w-btn > span:before, .top-cir-w-btn > span:after {
	content: "";
	display: block;
	position: absolute;
}
.top-cir-w-btn > span:before {
	width: 14px;
	height: 14px;
	background: #de0a20;
	border-radius: 50%;
	right: 0;
	top: 0px;
}
.top-cir-w-btn > span:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 6px;
	top: 5px;
}



/* MV下重要な通知(マーク入り)-------------------------------- */
.important-news {
	display: flex;
	margin: 0 auto 30px;
	max-width: 943px;
	font-size: 1.4rem;
}
.important-news dt  {
	display: flex;
	align-items: center;
	border-radius: 5px 0 0 5px;
	width: 13em;
	padding-left: 50px;
	background-color: #de0a20;
	background-image: url(../images/icon-caution_w.svg);
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	color: #fff;
	font-weight: bold;
}
.important-news dd  {
	display: flex;
	align-items: center;
	border:1px solid #e7e7e7;
	border-radius: 0 5px 5px 0;
	padding: 10px 25px;
	width: calc(100% - 13em);
	min-height: 60px;
	line-height: 1.4;
}
.important-news dd .date {
	padding-right: 1em;
}
	@media screen and (max-width: 559px) {
		.important-news {
			flex-direction: column;
			margin: 0 auto;
		}
		.important-news dt  {
			border-radius: 5px 5px 0 0;
			padding: 7px 5px 7px 50px;
		}
		.important-news dt,.important-news dd  {
			width: 100%;
		}
		.important-news dd  {
			border-radius: 0 0 5px 5px;
			display: block;
			padding: 1em;
		}
		.important-news dd .date {
			font-size: 1.2rem;
		}
	}

/* MV下通知 --------------------*/
.important-news-jo {
	display: flex;
	margin: 0 auto 30px;
	max-width: 943px;
	font-size: 1.4rem;
}
.important-news-jo dt  {
	display: flex;
	align-items: center;
	border-radius: 5px 0 0 5px;
	width: 13em;
	padding-left: 65px;
	background-color: #de0a20;
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	color: #fff;
	font-weight: bold;
}
.important-news-jo dd  {
	border:1px solid #e7e7e7;
	border-radius: 0 5px 5px 0;
	padding: 20px 25px;
	width: calc(100% - 13em);
	line-height: 1.4;
	font-weight: bold;
}
.important-news-jo dd a{
	font-weight: bold;
}

	@media screen and (max-width: 559px) {
		.important-news-jo {
			flex-direction: column;
			margin: 0 auto;
		}
		.important-news-jo dt  {
			border-radius: 5px 5px 0 0;
			padding: 7px 5px 7px 20px;
		}
		.important-news-jo dt,.important-news-jo dd  {
			width: 100%;
		}
		.important-news-jo dd  {
			border-radius: 0 0 5px 5px;
			display: block;
			padding: 1em;
		}
	}


/* MV下通知 long ver--------------------*/
.important-news-lng {
	display: flex;
	margin: 0 auto 30px;
	max-width: 943px;
	font-size: 1.4rem;
	padding-top: 30px;
}
.important-news-lng dt  {
	display: flex;
	text-align: center;
	align-items: center;
	border-radius: 5px 0 0 5px;
	width: 13em;
	padding-left: 5px;
	background-color: #de0a20;
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	color: #fff;
	font-weight: bold;
}
.important-news-lng dd  {
	align-items: center;
	border:1px solid #e7e7e7;
	border-radius: 0 5px 5px 0;
	padding: 10px 25px;
	width: calc(100% - 13em);
	min-height: 60px;
	line-height: 1.5;
	font-weight: normal;
}
.important-news-lng dd a{
	font-weight: bold;
}

	@media screen and (max-width: 559px) {
		.important-news-lng {
			flex-direction: column;
			margin: 0 auto;
			padding-bottom: 5px;
		}
		.important-news-lng dt  {
			border-radius: 5px 5px 0 0;
			padding: 7px 5px 7px 20px;
		}
		.important-news-lng dt,.important-news-lng dd  {
			width: 100%;
		}
		.important-news-lng dd  {
			border-radius: 0 0 5px 5px;
			display: block;
			padding: 1em;
		}
	}





/* 产品一览箇所 -------------------------------------------- */
.products-container {
	flex-wrap: wrap;
	justify-content: center;
}

.products-container > div {
	margin: 5px 10px;
	width: 200px;
	text-align: center;
}

@media screen and (min-width: 1100px) {
.products-container {
	flex-wrap: nowrap;
	justify-content: space-between;
	padding-left: 15px;
	padding-right: 15px;
}

.products-container > div {
		margin: 0;
}
}

.products-container > div figure {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #f6f6f6;
	width: 100%;
	height: 160px;
	margin: 0 0 20px;
}

.products-container h3 a {
	color: #000;
	font-size: 1.6rem;
	font-weight: bold;
}

.products-container h3 a:hover {
	color: #de0a20;
}

.philosophy {
	display: flex;
	align-items: center;
}

.philosophy > div {
	width: 50%;
}

.philosophy > div:first-child {
	padding-left: 30px;
	/* padding-right: 15px; */
}

.philosophy .image {
    /* background-image: url(../images/philosophy-01.jpg); */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left bottom;
		/* min-height: 330px; */
		height: 280px;

}

@media screen and (min-width: 1136px) {
.philosophy .text {
	float: right;
	width: 553px;
}
}

@media screen and (max-width: 799px) {

.philosophy > div:first-child {
	padding-top: 3em;
}
}

@media screen and (max-width: 559px) {

.philosophy {
	flex-direction: column;
}

.philosophy > div {
	width: 100%;
}

.philosophy > div:first-child {
	padding-left: 30px;
	padding-right: 30px;
}

.philosophy .image {
		min-height: 200px;
}
}


/* トップページ NEWS箇所--------------------------------------------------------- */
.info-col {
	border: 1px solid #e7e7e7;
	padding: 24px;
}

.info-col a {
	 color: #000;
}

.info-col a:hover {
	color: #de0a20;
	text-decoration: none;
}

.info-col a:hover p {
	text-decoration: underline;
}

.info-col p  {
	font-weight: bold;
}

.info-col .desc {
	margin: 1.2em 0 1em;
}

.info-col .text {
	margin-bottom: 0;
	font-size: 1.2rem;
}





/* =====================================================================
	产品一览ページ
===================================================================== */

.main {
	position: relative;
	margin-bottom: 2.5vh;/*yoshio*/
	width: 100%;
	height: 280px;
	color: #FFF;
}

.main-noimg {
	position: relative;
	margin-bottom: 2.5vh;/*yoshio*/
	width: 100%;
    height: 160px;
	color: #FFF;
}

	@media screen and (max-width: 559px) {
	.main {
		margin-bottom: 30px;
	}
	}

/*yoshio*/
.main-casetit {
	position: relative;
	margin-bottom: 2.7vh;/*yoshio*/
	width: 100%;
	height: 160px;
	color: #FFF;
}
    @media screen and (max-width: 559px) {
    .main-casetit {
        margin-bottom: 30px;
    }
    }

.main-image {
	display: flex;
	align-items: center;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.main-image:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 280px;
	content: "";
	background: rgba(0,0,0,0.4);
}
.main-ttl {
	line-height: 1;
	margin-bottom: 0.5em;
	color: #fff;
	font-weight: bold;
    padding-left: 1em;/*yoshio20-06*/
}
.main-image.lineup {
	background-image: url(../images/lineup/main-01.jpg);
}

/*yoshio20-06*/
p.lead{
    padding-left: 2em;
}

    @media screen and (max-width: 559px) {
	p.lead{
		padding-left: 1.5em;
	}
	}


    @media screen and (max-width: 559px) {
    .main, .main-image:before {
        height: 140px;
    }
    }

    @media screen and (max-width: 559px) {
    .spinfo-h{
        height: 180px;/*yoshio*/
    }
    }

.main-text {
	position: relative;
}
.main-text p:last-child {
	margin-bottom: 0;
}
.list-lineup {
	flex-wrap: wrap;
}
.list-lineup h3 a, .list-lineup h3 a:hover {
	text-decoration: none;
	color: #000;
	font-weight: bold;
}
.list-lineup h3 {
	margin-top: 1.5em;
	margin-bottom: 1em;
}

@media screen and (max-width: 559px) {
.list-lineup h3 {
	margin-top: .5em;
}
.list-lineup h3 a, .list-lineup h3 a:hover {
	text-decoration: underline;
}
}
.list-lineup > li {
	margin-bottom: 3em;
	width: 31%;
	margin-right: 3.5%;
}
.list-lineup > li:nth-child(3n) {
	margin-right: 0;
}
.list-lineup .image {
	background: #f6f6f6;
	width: 100%;
	text-align: center;
}

@media screen and (max-width: 559px) {
.list-lineup > li {
	margin-bottom: 2em;
	width: 48%;
	margin-right: 4%;
}
.list-lineup > li:nth-child(3n) {
	margin-right: 4%;
}
.list-lineup > li:nth-child(2n) {
	margin-right: 0;
}
.list-lineup h3 + p,  .list-lineup dl {
	display: none;
}
}

@media screen and (max-width: 480px) {
.list-lineup {
	flex-direction: column;
	flex-wrap: nowrap;
}
.list-lineup > li {
	width: 100%;
	margin-right: 0;
}
.list-lineup > li:nth-child(3n) {
	margin-right: 4%;
}
}

/* 产品一览ページ - 導入例箇所----------------------------------- */
.case-example {
	justify-content: space-between;
}
.case-example .col {
	border-radius: 6px;
}
.case-example .col img {
	border-radius: 6px 6px 0 0;
}
.case-example .col {
	width: 46%;
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
}
.case-example .col2 {
	width: 46%;
}
	@media screen and (min-width: 1340px) {
	.case-example .col-2 {
		width: 530px;
	}
	}

.case-example .col3 {
	width: 30.8%;
}
.case-example .text {
	padding: 3em;
}
	@media screen and (max-width: 959px) {
	.case-example .text {
		padding: 3em;
	}
	}

	@media screen and (min-width: 600px) {
	.case-example + .case-example {
		margin-top: 2em;
	}
	}

	@media screen and (max-width: 559px) {
		.case-example {
			flex-direction: column;
		}
		.case-example .col {
			width: 100%;
		}
		.case-example .col:not(:last-child) {
			margin-bottom: 2em;
		}
	}

.case-example .image {
	position: relative;
}

.case-example .play:before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-image: url(../images/bg_play.png);
	background-size: contain;
}

.case-example a.expand .play:before {
-webkit-transition: -webkit-transform .4s;
transition: transform .4s;
will-change: transform;
}

.case-example a.expand:hover .play:before {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}


/* 产品一览ページ - 咨询--------------------------------------------------- */
.contact-large {
	display: flex;
	align-items: center;
}
.contact-large > .col {
	width: 50%;
}

.contact-large .title {
	padding-top: 0;
}
.contact-large .img-contact {
	margin-right: -15px;
	margin-left: -15px;
}
.contact-large .text {
	padding: 5% 10%;
}

.contact-large .image {
    background-image: url(../images/contact-01.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right bottom;
    min-height: 380px;
}

.contact-large .btn {
	max-width: 414px;
}


@media screen and (max-width: 959px) {
.contact-large .text {
	padding: 10% 10% 10% 5%;
}
.contact-large .title {
	font-size: 2rem;
}
}

@media screen and (max-width: 559px) {
.contact-large {
	flex-direction: column;
}
.contact-large > .col {
	width: 100%;
}
.contact-large .image {
	position: relative;
	overflow: hidden;
	min-height: 200px;
}
.contact-large .text {
	padding: 5% 30px;
}
.contact-large .title {
	font-size: 1.8rem;
}
.contact-large .text .btn {
	margin-right: auto;
	margin-left: auto;
}
}


/* 产品一览ページ - 咨询 ページ下部------------------------------------------- */
.contact-type {
	display: flex;
}
.contact-type .col {
	width: 50%;
}
.contact-type .col .text {
	padding: 3em;
	width: 100%;
}

@media screen and (min-width: 1340px) {
.contact-type .col .text {
	width: 483px;
}
}
.contact-type .col .pict {
	width: 127px;
}
.contact-type .col .text p {
	overflow: hidden;
}

@media screen and (max-width: 1299px) {
.contact-type .col .btn {
}
}
.contact-type .col:first-child {
	/* border-right: 1px solid #f6f6f6; yoshio*/
	border-right: 1px solid #E8E8E8;/*yoshio*/
}
.contact-type .col:first-child .text {
	float: left;
	padding-left: 0;
}
.contact-type .col:last-child .text {
	float: right;
	padding-right: 0;
}

@media screen and (max-width: 959px) {
.contact-type .col .pict {
	width: 100px;
}
.contact-type .col .pict img {
	width: 75%;
}
.contact-type .col .btn {
	width: 100%;
}
}

@media screen and (max-width: 539px) {
.contact-type {
	flex-direction: column;
}
.contact-type .col {
	width: 100%;
	padding: 2em 0;
}
.contact-type .col:first-child {
	border-right: none;
	border-bottom: 1px solid #f6f6f6;
}
.contact-type .col:first-child .text, .contact-type .col:last-child .text {
	float: none;
	padding: 0;
}
.contact-type .col .pict {
	height: 90px;
}
.contact-type .col .btn {
	clear: both;
}
}


/* =====================================================================
	製品ページ
===================================================================== */
h3.presstop{
	font-size: 3.0rem;
	font-weight: bold;
}
	@media screen and (max-width: 959px) {
		h3.presstop{
			font-size: 2.6rem;
		}
	}	
	@media screen and (max-width: 559px) {
		h3.presstop{
			font-size: 2.0rem;
		}
	}

h4.titbold{
	font-size: 2.5rem;
	font-weight: bold;
}
	@media screen and (max-width: 959px) {
		h4.titbold{
			font-size: 2.6rem;
		}
	}	
	@media screen and (max-width: 559px) {
		h4.titbold{
			font-size: 2.0rem;
		}
	}

/* 製品ページ - tab menu------------------------------------------------------ */
.nav-tabmenu {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.tabmenu {
	display: flex;
	width: 100%;
	max-width: 740px;
	text-align: center;
}
.tabmenu a {
	display: block;
	color: #000;
	text-decoration: none;
}
.tabmenu > li {
	margin-right: 2px;
	width: 25%;
	position: relative;
}
.tabmenu > li > a {
	position: relative;
	border-top: 2px solid #f6f6f6;
	background: #f6f6f6;
	line-height: 58px;
}
.tabmenu li.current > a, .tabmenu li > a:hover {
	background: #dcdcdc;
}
.tabmenu li.current > a {
	border-top: 2px solid #de0a20;
}
.tabmenu > li.current > a:after, .tabmenu > li.current ul:after {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #dcdcdc;
}
.tabmenu > li.current ul:after {
	border-top: 10px solid #fff;
}
.tabmenu > li.parent > a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10%;
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -5px;
	border-right: 2px solid #de0a20;
	border-bottom: 2px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.tabmenu > li.parent > a {
	padding-right: 1em;
}
.tabmenu .pulldown {
	display: none;
	position: absolute;
	top: 58px;
	left: 0;
	width: 100%;
	padding: 6px 0;
	background: #f6f6f6;
	z-index: 1;
}
.tabmenu > li .pulldown li {
	position: relative;
}
.tabmenu > li .pulldown li a {
	/* line-height: 40px; */
	line-height: 20px;
	padding: 7px 0;
	font-size: 1.4rem;
}
.btn-group-dl .btn {
	margin: 0 4px;
	width: 175px;
	font-size: 1.4rem;
	letter-spacing: -0.05em;
}

	@media screen and (max-width: 1136px) {
	.tabmenu {
		width: calc(100% - 330px);
	}
	.tabmenu > li > a {
		font-size: 1.4rem;
	}
	.btn-group-dl .btn {
		width: 150px;
		font-size: 1.2rem;
	}
	}

	@media screen and (max-width: 959px) {
	.tabmenu {
		max-width: none;
		width: 100%;
	}
	.btn-group-dl {
		display: none;
	}
	}

	@media screen and (max-width: 639px) {
		.tabmenu {
			max-width: none;
			flex-direction: column;
			margin-bottom: 3em;
			text-align: left;
		}
		.tabmenu > li {
			margin-right: 0;
			margin-bottom: 2px;
			width: 100%;
		}
		.tabmenu > li.parent > a:before {
			right: inherit;
			left: 15px;
			margin-top: -3px;
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
		.tabmenu li.current > a {
			border-top: 2px solid #f6f6f6;
		}
		.tabmenu > li.current a:after {
			content: none;
		}
		.tabmenu > li > a {
			padding: 0 1em 0 2.5em;
			line-height: 40px;
		}
		.tabmenu > li .pulldown {
			position: inherit;
			top: inherit;
			left: inherit;
			padding: 2px 3px;
		}
		.tabmenu > li .pulldown li a {
			line-height: 40px;
			padding: 0 2.5em;
			background: #FFF;
			border-bottom: 1px solid #e6e6e6;
		}
	}


/* 製品ページ - main---------------------------------------------------------------------- */
.ttl-product {
	font-size: 4rem;
    padding-left: 0.8em;/*yoshio20-06*/

}
.main-product,.main-case,.main-column {
	display: flex;
	align-items: center;
	background-color: #f6f6f6;
	color: #000;
}

.main-case .main-ttl,
.main-column .main-ttl{
	color: #000;
}

    @media screen and (max-width: 959px) {
    .ttl-product {
        font-size: 3rem;
    }
    .main-product-text {
        text-shadow: 1px 1px 0 #f6f6f6, -1px -1px 0 #f6f6f6,  -1px 1px 0 #f6f6f6, 1px -1px 0 #f6f6f6,  0px 1px 0 #f6f6f6, 0-1px 0 #f6f6f6,  -1px 0 0 #f6f6f6, 1px 0 0 #f6f6f6;
    }
    }
    @media screen and (max-width: 559px) {
    .ttl-product {
        font-size: 2rem;
    }
    }

.bg-modelname {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 100% center;
	background-size: auto 110%;
}
	@media screen and (max-width: 559px) {
	.bg-modelname {
		/* display: none; */
		opacity: 0.7;
	}
	}

.bg-modelname.vertical {
	background-position: 95% center;
	background-size: auto 85%;
}
	@media screen and (max-width: 959px) {
	.bg-modelname.vertical {
		background-size: auto 60%;
	}
	}

/* background alphabet text---- */
.typo-large,
.typo-modelname {
	display: inline;
	position: absolute;
	bottom: 0;
	right: 5px;
	font-family: Roboto, Arial, Helvetica, "sans-serif";
	letter-spacing: -0.06em;
	line-height: 0.6;
	z-index: 0;
	color: #FFF;
	user-select: none;
}
.typo-large {
	font-size: 14vw;
	opacity: 0.7;
}

.typo-modelname {
	font-size: 19vw;
}
	@media screen and (min-width: 1360px) {
	.typo-modelname {
		font-size: 23rem;
	}
	}
	@media screen and (max-width: 559px) {
	.typo-modelname {
		font-size: 16vw;
		opacity: 0.7;
	}
	}


/* 製品ページ - tab content block-----------------------------------------------------*/
.tab-content-wrap {
	padding: 30px;
}
    @media screen and (min-width: 1136px) {
    .tab-content-wrap {
        /*padding: 69px;*/
        padding: 40px 69px 69px 69px;
    }
    }
    @media screen and (max-width: 559px) {
    .tab-content-wrap {
        padding: 0;
    }
    }

/* yoshio2020.9.23 */
.tab-content-wrap-business {
	padding: 30px;
}
    @media screen and (min-width: 1136px) {
    .tab-content-wrap-business {
        padding: 40px 69px 69px 69px;
    }
    }
    @media screen and (max-width: 559px) {
    .tab-content-wrap-business {
        padding: 0;
        width: 100%;
    }
    }


.box-uneven h4 ~ p, .box-uneven h4 ~ ul, .box-uneven h4 ~ ol :not(ul.ptop_caseimg_boxin){
	margin-left: 2em;
}

/*yoshio*/
.box-uneven h3 ~ p, .box-uneven h3 ~ ul, .box-uneven h3 ~ ol {
	margin-left: 2em;
}
/* ---- */


.box-bisect {
	display: flex;
	justify-content: space-between;
}
.text-box {
	width: 50%;
}
.image-box {
	width: 40%;
}
.image-square {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

	@media screen and (min-width: 1136px) {
	.image-square {
		width: 400px;
		height: 400px;
	}
	}

	@media screen and (max-width: 559px) {
	.text-box {
		width: 65%;
	}
	.image-box {
		width: 30%;
	}
	}
.image-side > * {
	margin-bottom: 25px;
	display: inline-block;
}
.image-side > *:not(last-child) {
	margin-right: 25px;
}
.image-space {
	height: 10em;
	float: right;
}
.image-r-bottom {
	clear: both;
	float: right;
	margin: 0 1.2em 1.2em;
	text-align: center;
}

	@media screen and (max-width: 959px) {
	.image-space, .image-r-bottom {
		clear: both;
		float: left;
	}
	.image-space {
		height: 29em;
	}
	}

	@media screen and (max-width: 559px) {
	.image-space, .image-r-bottom {
		float: none;
	}
	.image-space {
		display: none;
	}
	}
.img-code {
	border-radius: 5px;
	margin-top: 1em;
	margin-bottom: 2em;
	border: #f6f6f6 1px solid;
}

.img-code2 {
	margin: 0 auto;
	padding: 1em;
	text-align:center;
}
.img-code2 img{
	margin-left: 1em;
	padding: 0.8em;
	border-radius: 5px;
	border: #E7E7E7 1px solid;
}

.code-txt{
	font-size:2.5rem;
}


/* 製品ページ - table style------------------------------------------ */

.tbl-spec {
	width: 998px;
}
.tbl-spec + .tbl-spec {
	margin-top: -1px;
}
.tbl-spec th, .tbl-spec td {
	padding: 16px 14px;
	font-size: 1.4rem;
}

.tbl-spec thead th {
	background: #dcdcdc;
	width: 12.5%;
	line-height: 1.2;
}

.tbl-spec em {
	background: #f8d5d5;
	display: block;
	margin-bottom: 4px;
	padding: 4px;
	font-weight: normal;
	line-height: 1.4;
}
.tbl-spec th:empty, .tbl-spec td:empty {
	border: none;
	background: none;
}
.tbl-spec .unit dt {
	float: left;
	width: 2em;
	text-align: right;
}
.tbl-spec .unit dd {
	margin-left: 2em;
}
.tbl-spec .unit dd:after {
	content: '';
	display: block;
	clear: both;
}
.tbl-spec .unit.unit-kn dt {
	width: 55%;
}
.tbl-spec .unit.unit-kn dd {
	margin-left: 55%;
}
.tbl-spec-model th {
	padding-left: 0;
	padding-right: 0;
}
.tbl-spec-model td {
	padding-left: 10px;
	padding-right: 10px;
}
.tbl-spec-model thead tr th:nth-child(n+2) {
	width: 80px;
}
.tbl-spec-common {
	width: 998px;
}
.tbl-spec-common .mode {
	width: 270px;
}
.tbl-spec-common .col-half {
	width: 49%;
	padding: 10px;
}

table.w-auto {
	width: auto;
}

/* spec table  -----------------------------------*/
.tbl-spec-model2 th {
	padding-left: 10px;
	background: #f6f6f6;
}
.tbl-spec-model2 tbody th{
	text-align: left;
}

.tbl-spec-model2 td {
	padding-left: 10px;
	padding-right: 10px;
}
.tbl-spec-model2 thead tr th:nth-child(n+2) {
	width: 80px;
}

/* =====================================================================
	レイアウト
===================================================================== */

.col4,.column-container {
	/* justify-content: space-between; */
	justify-content: space-evenly;
	padding-bottom: 3em;
}

	@media screen and (min-width: 1340px) {
	.col4 .col,.column-col {
		width: 250px;
	}
	}

.col4 .col,.column-col {
	position: relative;
	width: 22%;
}

	@media screen and (max-width: 768px) {
	.col4,.column-container {
		flex-wrap: wrap;
		padding-bottom: 1em;
	}
	.col4 .col,.column-col {
		width: 48%;
		margin-right: 4%;
	}
	.col4 .col {
		margin-bottom: 2em;
	}
	.col4 .col:nth-child(2n),
	.column-container .column-col:nth-child(2n) {
		margin-right: 0;
	}
	}

	@media screen and (max-width: 414px) {
	.col4,.column-container {
		flex-direction: column;
		flex-wrap: nowrap;
	}
	.col4 .col,.column-col {
		width: 100%;
		margin-right: 0;
	}
	}

.column-col .thumb img,
.col4 .col .thumb img{
	width: 100%;
}

.post-meta .category {
	padding-left: .6em;
	color: #000;
	font-weight: bold;
}

.date{
	line-height: 1.1;
	font-weight: bold;
}

.date,.category{
	font-size: 1.2rem;
}

@media screen and (max-width: 559px) {
.date,.category{
	font-size: 1.0rem;
}
}
	@media screen and (max-width: 559px) {
	.img-cnt-sp{
		width: 100% !important;
	}
	}


/* =====================================================================
	コラムページ
===================================================================== */

/* トップページ・製品トップ共通  コラム4記事--------------------  */
#column-top .h2{
	font-size:16px;
	/* color: #000; */
	font-weight: normal;
}

.column-container .post-meta{
	position: absolute;
	top: 0;
	left: 0;
}

.column-col a {
	display: block;
}

.column-col a:hover .date {
	background: #de0a20;
	opacity: 1;
}

.column-col .date{
	display: inline-block;
	background: #000;
	padding: .9em 1.3em;
	color: #FFF;
}

.column-col a .desc {
	color: #000;
}

.column-col a:hover .desc {
	color: #de0a20;
}

.column-col .desc {
	padding: 1em 0 2em;
}


/* コラム一覧ページ - レイアウト */
.wrapper {
	display: flex;
	justify-content: space-between;
}

.primary {
 width: calc(100% - 263px);
}

.sidebar {
	width: 263px;
}

	@media screen and (max-width: 768px) {
	.wrapper {
		flex-direction: column;
	}
	.primary {
	width: 100%;
	}
	}


.sd-rbox {
	margin-bottom: 40px;
	padding: 2em;
	background: #f6f6f6;
	border-radius: 5px;
	font-size: 1.4rem;
}

.sd-rbox dt {
	font-weight: bold;
	margin-bottom: 1em;
}

.sd-rbox p:last-child {
	margin-bottom: 0;
}

.sidebar .sd-title:before {
	content: "";
	display: block;
	position: absolute;
	margin-top: -1px;
	top: 50%;
	left: 0;
	width: 24px;
	height: 2px;
	background: #de0a20;
}

.sidebar .sd-title {
	position: relative;
	margin-top: 0;
	font-size: 100%;
}

.sidebar .sd-title,
.sd-menu{
	margin-bottom: 1em;
	padding-left: 40px;
}

.sd-menu li a {
	color: #000;
}

.sd-menu li a:hover {
	color: #de0a20;
}

.sd-menu li{
	margin-bottom: 1em;
	font-size: 1.4rem;
}

.sidebar .banner {
	padding-bottom: 20px;
}

.sidebar .banner img {
	display: block;
	margin-bottom: 20px;
}


	@media screen and (max-width: 559px) {
	.sidebar  {
		width: 100%;
	}
	.sidebar .sd-title{
		clear: both;
		font-size: 1.4rem;
	}
	.sd-menu li{
		float: left;
		width: 50%;
		padding-right: 1em;
	}
	}

	@media screen and (max-width: 414px) {
		.sidebar .sd-title:before {
			width: 14px;
		}
		.sidebar .sd-title,
		.sd-menu{
			margin-bottom: .5em;
			padding-left: 20px;
		}
		.sd-menu li{
			font-size: 1.2rem;
		}
	}


/* コラム首页------------------------------------------------------  */

.column-top-container {
	display: flex;
}

.column-list {
	flex-wrap: wrap;
  justify-content: flex-start;
}

.column-list .column-col {
	width: 41%;
  margin-right: 9%;
}

.column-list .column-col:nth-child(2n) {
   margin-right: 0;
}

	@media screen and (max-width: 768px) {
	.column-list .column-col {
		width: 46%;
	margin-right: 8%;
	}
	}

	@media screen and (min-width: 1137px) {
		#column-top .column-container .column-col {
		width: 360px;
		}
	}

#column-top .column-container .column-col {
width: 360px;
}

.column-col figure {
	margin: 0;
}

.column-col figure img {
	width: 100%;
}

.column-col a:hover  {
	text-decoration: none;
}

.column-col a:hover p  {
	text-decoration: underline;
}

/* コラム個別ページ------------------------------------------------------------- */

/* コラムナンバータイトル------------------------ */
.column-num{
	font-size: 1em;
}

/* コラム全体コンテナ */
#column-single {
	padding-top: 70px;
}
	@media screen and (max-width: 559px) {
	#column-single {
		padding-top: 20px;
	}
	}

/* タイトル＋記事箇所コンテナ */
.column-article-container{
	margin-right: 7%;
}
	@media screen and (max-width: 559px) {
	.column-article-container{
		margin-right: 1em;
	}
	}

/* .article-body {
	padding-bottom: 50px;
} */

/* タイトル箇所 */
.article-title {
	margin-bottom: 1em;
	font-size: 3rem;
	line-height: 1.6;
}
	@media screen and (max-width: 559px) {
	.article-title{
		font-size: 2.0rem;
	}
	}

/* 記事箇所コンテナ */
.article-body {
	padding-bottom: 50px;
}

/* 記事箇所の小見出し */
.article-body h2{
	background: #f6f6f6;
	margin-bottom: 1.5em;
	padding: 0.8em 1.2em;
	font-size: 2rem;
	line-height: 1.4;
}

/* .article-body h2:not(:first-of-type){
	margin-top: 1.5em;
} */

	@media screen and (max-width: 559px) {
	/* .article-title{
		font-size: 2.0rem;
	} */

	.article-body h2{
		font-size: 1.8rem;
	}
	}
	@media screen and (max-width: 414px) {
	.article-body h2{
		font-size: 1.6rem;
	}
	}

.article-body h2:not(:first-of-type){
	margin-top: 1.5em;
}

/* 日付とカテゴリー */
.column-article-container .post-meta {
	margin-bottom: 40px;
	border-top: 1px solid #f6f6f6;
}

/* 記事箇所装飾 ====================================*/
/* リンク ---------------------------------*/
.article-body a {
	text-decoration: underline;
}

.article-body a:hover {
	text-decoration: none;
}

/* 画像 ---------------------------------*/
.article-image{
	padding-bottom: 1em;
}

/* 左右コンテナ ---------------------------------*/
.article-body .wrap {
	display: flex;
	justify-content: space-between;
}
	@media screen and (max-width: 559px) {
	.article-body .wrap {
		display: block;
	}
	}


/* .article-body .wrap > div{
	width: 48%;
} */


/* テキストボックスの比率 ---------------------------------*/
.article-body .photo-rM > div.text{
	width: 65%;
}
.article-body .photo-rH > div.text{
	width: 50%;
}

.article-body .photo-lM > div.text{
	width: 65%;
	padding-left: 2em;
}
.article-body .photo-lH > div.text{
	width: 50%;
	padding-left: 2em;
}

/* 画像ボックスの比率 ---------------------------------*/
.article-body .photo-rM > div.image,
.article-body .photo-lM > div.image{
	width: 35%;
}
.article-body .photo-rH > div.image,
.article-body .photo-lH > div.image{
	width: 50%;
}
	@media screen and (max-width: 559px) {
	.article-body .photo-rM > div.text,
	.article-body .photo-rM > div.image,
	.article-body .photo-lM > div.text,
	.article-body .photo-lM > div.image,
	.article-body .photo-rH > div.text,
	.article-body .photo-rH > div.image,
	.article-body .photo-lH > div.text,
	.article-body .photo-lH > div.image,
	.article-body .wrap > div.image,
	.article-body .photo-sub > div.text,
	.article-body .photo-sub > div.image{
		width: 100%;
		margin: 0;
		padding: 0;
	}
	}

.article-body .wrap.photo-rM,
.article-body .wrap.photo-rH {
	flex-direction: row-reverse;
}


/* sub画像左右 sp上がテキスト ------------------*/
.round img{
	border-radius: 30px;
}
.photo-sub{
	margin-bottom: 1em;
}
/* テキストボックスの比率 */
.article-body .photo-sub > div.text{
	width: 70%;
	padding-right: 2em;
}
/* 画像ボックスの比率 */
.article-body .photo-sub > div.image{
	width: 30%;
}
/* sub画像左右 sp上がテキスト ------------------*/


/* アイテム ----------------------------------*/
.article-body .caption{
	font-size: 0.8em;
}

.article-body .wrap .image img {
	margin-bottom: 0px;
}
	@media screen and (max-width: 559px) {
		.article-body .wrap .image img {
		margin-bottom: 20px;
	}
	}

.article-body ul,.article-body ol {
	margin-bottom: 1.4em;
	line-height: 1.875;
}

.article-body ul li {
	margin-bottom: .4em;
}

.article-body ul li.num-list {
	padding-left: 1.3em;
	text-indent: -1.3em;
}

.num-list {
	padding-left: 1.1em;
	text-indent: -1.1em;

}


/* 強調リストアイコン ----------------------------*/
.culumn-list-tg {
	padding-left: 20px;
	position: relative;
}
.culumn-list-tg:before {
    content: "";
    position: absolute;
    top: 10px;
    left: 5px;
    display: block;
    width: 8px;
    height: 10px;
		margin-right: 10px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    background-color: #de0a20;
}

/* ボタン ----------------------------------------*/
.column-middle-btn {
	display: block;
	padding: 1em;
	/* background-color: #fff; */
	background: #fde7e7;
	/* text-decoration: none !important; */
	border: 1px #DE0A20 solid;
	width: 100%;
	text-align: center;
	line-height: 1.15;
	font-size: 1.4rem;
	border-radius: 50px;
}
	@media screen and (max-width:560px){
	.column-middle-btn{
		margin-left: 0;
		width: 100%;
		margin-bottom: 2em;
	}
	}

.column-middle-btn:hover {
	background: #fff5f5;
	text-decoration:underline !important;
}
/* 下線 ---------------------------------- */
.column-udline{
	border-bottom: #ec3b3b69 4px solid;
}
.column-marker{
	background:  linear-gradient(transparent 64%,#ec3b3b69 0%);
}
.udmarker{
  padding-bottom: 7px;	/*different another site*/
}
/* 囲み線 -------------------------------*/
.column-ex-textbox{
border: 1px solid #000;
padding: 1em; 
border-radius: 10px;
}
.column-ex-textbox ul{
	margin-bottom: 0px;
}


/* ページ送り--------------------------------------------------------------*/
.pager  .pagination {
  text-align: center;
	font-size: 1.2rem;
	font-family: Arial, Helvetica, "sans-serif";
}
	@media only screen and (max-width: 559px){
	.pager .pagination {
	margin: 0 0 3em;
	padding:  0 0 3em;
	font-size: 1.2rem;
	}
	}

.pager .pagination li {
  display: inline;
  margin: 0 4px;
  padding: 0;
  display: inline-block;
  width: 35px;
  height: 35px;
  text-align: center;
  position: relative;
}
	@media only screen and (max-width: 559px){
	.pager .pagination li {
	width: 35px;
	height: 50px;
	}
	}

.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display:table;
  color: #000;
  text-decoration: none;
}

.pager .pagination li a span{
	border: 1px solid #e7e7e7;
  display:table-cell;
  vertical-align:middle;
}

  .pager .pagination li.pre a span ,
  .pager .pagination li.next a span{
   	border: none;
		font-size: 150%;
  }
	@media only screen and (max-width: 559px){
	.pager .pagination li.pre a span ,
	.pager .pagination li.next a span{
	border: 1px solid #e7e7e7;
	font-size: 100%;
	}
	}

.pager .pagination li a:hover,
.pager .pagination li a.active{
  color: #fff;
  background: #d90d19;
}


/* コラムページ - 関連製品------------------------------------------------ */
.related-list {
	display: flex;
	flex-wrap: wrap;
	/* margin: 0 10%; */
	margin: 0 6%;
	justify-content: space-between;
}

.related-list li{
	/* width: 170px; */
	width: 210px;
	/* height: 185px; */
}

	@media only screen and (max-width: 559px){
	.related-list li{
		margin: 0 8% 0 0;
		width: 46%;
	}
	.related-list li:nth-child(2n){
		margin: 0;
	}
	}

.related-list .image{
	display: flex;
	height: 114px;
	margin-bottom: 15px;
	align-items: center;
	justify-content: center;
}
.related-list_tit{
	display: flex;
}
.related-list p{
	display: block;
	line-height: 1.5;
}
.related-list span{
	font-size: 0.8em;
}


/* オススメ箇所--------------------- */
.recommend-list li{
	display: flex;
	margin-bottom: 0.5em;
	align-items: center;
}

.recommend-list .date{
	background: #000;
	padding: .9em 1.3em;
	color: #FFF;
	display: block;
	height: 3em;
}

.recommend-list p{
	overflow: hidden;
	padding-left: 1.2em;
	display: block;
	margin-bottom: 0;
}

/* コラム テーブル */
.ColumnTable th{
	background-color: #ffd2d2;
}
.tdcenter td{
	text-align: center;
}

/* //コラム */

/* =====================================================================
	导入・用途实例
   ===================================================================== */

#case-mask{
	background: rgba(0,0,0,0.4);
	position: fixed;
	top: 0;
	left:0;
	right: 0;
	bottom: 0;
	z-index: 80;
}
#case-mask.hidden{
	display: none;
}
#desktopmenu.hidden{
	display: none;
}

.pg-case h2{
	/* font-weight: normal; */
}

.pg-case .ttl-border{
	margin-bottom: 1em;
	border-bottom: 1px solid #C5C5C5;
	padding-bottom: 0.2em;
	line-height: 1.4;
}

.pg-case h3{
	font-weight: normal;
}

/* tabmenu------------------------------------------------------ */
.tabmenu-case {
	max-width: none;
}
	@media screen and (max-width: 1136px) {
	.tabmenu-case {
		width: 100%;
	}
	}

/* pg-case_box flex ---------------------------------------------- */
.pg-case_box-flex{
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
}
    @media screen and (max-width:560px){
        .pg-case_box-flex{
        display: block;
        }
    }

.pg-case_box{
    /* width: 256px; */
    width: 350px;
	border-radius: 6px;
	border: 1px solid #e7e7e7;
	box-shadow: none;
	margin-bottom: 2em;
	margin-left: 0.5em;
	margin-right: 0.5em;
}
		@media screen and (max-width:1136px){
			.pg-case_box {
			width: 31%;
			margin-right: 0%;
			}
		}
		@media screen and (max-width:680px){
			.pg-case_box {
			width: 47%;
			margin-left: 0.5em;
			margin-right: 0.5em;
			}
		}
		@media screen and (max-width:560px){
			.pg-case_box {
			width: 100%;
			margin-left: 0%;
			margin-right: 0%;
			}
		}


.pg-case_box .image {
	position: relative;
}
.pg-case_box .image img {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
	@media screen and (max-width:560px){
		.pg-case_box .image img {
		width: 100%;
		}
	}


.pg-case_box .play:before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-image: url(../images/bg_play.png);
	background-size: contain;
}

.pg-case_box a.expand .play:before {
-webkit-transition: -webkit-transform .4s;
transition: transform .4s;
will-change: transform;
}

.pg-case_box a.expand:hover .play:before {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}

.pg-case_box .text {
	padding: 1em;
}
.pg-case_box .text h3 {
	font-size:1em;
	border-bottom: 1px solid #C5C5C5;
}

.box-uneven h3 ~ p, .box-uneven h3 ~ ul, .box-uneven h3 ~ ol .pg-case_box .text p {
	margin-left: 0em;
}
.pg-case_box .text p {
	line-height: 1.4;
}

		@media screen and (max-width: 959px) {
		.pg-case_box .text {
			padding: 1em;
		}
		}
		@media screen and (max-width: 559px) {
		.pg-case_box-case_example {
			flex-direction: column;
		}
		.pg-case_box .col {
			width: 100%;
		}
		.pg-case_box .col:not(:last-child) {
			margin-bottom: 2em;
		}
		}


/* popup  ---------------------------------------------- */
.case-mpop iframe{
	background-color: #000;

}






/* =====================================================================
	咨询入り口ページ
===================================================================== */
.contact-container {
	justify-content: space-between;
}
.card {
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
}
.col-contact {
	width: 30.8%;
}
.col-contact .icon {
	height: 200px;
	border-radius: 6px 6px 0 0;
	text-align: center;
}
.col-contact img {
	height: 58%;
	vertical-align: middle;
}
.col-contact .text {
	padding: 2em 2.5em;
	font-size: 1.4rem;
}
.col-contact .text > div {
	min-height: 18em;
}

@media screen and (max-width: 1119px) {
.col-contact .text > div {
	min-height: 20em;
}
}
.col-contact h3 {
	font-size: 1.8rem;
}
.card .text .btn {
	margin-bottom: 10px;
}
.col-contact .btn {
	width: 100%;
	white-space: nowrap;
}

@media screen and (max-width: 959px) {
.contact-container {
	flex-direction: column;
}
.contact-container .col-contact:not(:last-child) {
	margin-bottom: 2em;
}
.col-contact {
	display: table;
	width: 100%;
}
.col-contact .icon {
	display: table-cell;
	table-layout: fixed;
	height: 50px;
	width: 80px;
	border-radius: 6px 0 0 6px;
	vertical-align: middle;
}
.col-contact img {
	width: 60%;
	height: auto;
	vertical-align: middle;
}
.col-contact .text {
	display: table-cell;
}
.card .text {
	padding: 2em;
}
.col-contact .text > div {
	min-height: inherit;
}
}

	@media screen and (max-width: 559px) {
	.contact-container {
		flex-direction: column;
	}
	}

	@media screen and (max-width: 375px) {
	.col-contact .icon {
		display: none;
	}
	.col-contact h3 {
		font-size: 1.6rem;
	}
	}


/*咨询入り口ページ - 線付き囲み-------------------------------*/

.line-box-iq{
	border:1px #DCDCDC dotted;
	padding:1em;
	margin-left:20em;
	margin-right:20em;
}
@media screen and (max-width:1130px){
	.line-box-iq{
	margin-left:0em;
	margin-right:0em;
	}
}
@media screen and (max-width:560px){
	.line-box-iq{
	margin-left:0em;
	margin-right:0em;
	}
}





/* =====================================================================
	FOOTER
   ===================================================================== */

footer a {
	text-decoration: none;
	cursor: pointer;
}
footer {
	padding-bottom: 50px;
	background: #FFF;
	width: 100%;
}
footer h6 a {
	color: #000;
	font-weight: bold;
}
footer h6 {
	margin-bottom: 1em;
	line-height: 1.15;
	font-weight: bold;
	font-size: 1.4rem;
}
.f-link-wrap {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3em;
}
.f-link-wrap > li {
	width: 20%;
}


.f-link-wrap > li:last-child {
	width: 14%;
}

	@media screen and (max-width: 959px) {
	.f-link-wrap {
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.f-link-wrap > li, .f-link-wrap > li:last-child {
		width: 30%;
		margin-right: 5%;
	}
	.f-link-wrap > li:nth-child(3n) {
		margin-right: 0;
	}
	}

	@media screen and (max-width: 559px) {
	footer {
		padding-bottom: 60px;
	}
	footer h6 {
		font-size: 1.2rem;
	}
	.f-link-wrap > li {
		width: 47%;
		margin-right: 3%;
	}
	.f-link-wrap > li:nth-child(2n) {
		margin-right: 0;
	}
	}

.f-link li > a {
	width: 12em;
	color: #000;
	font-size: 1.4rem;
	line-height: 1.5;
	padding-top: 3px;
}

	@media screen and (max-width: 559px) {
	.f-link li > a {
		width: 10em;
		font-size: 1.2rem;
	}
	}

.footer-bar, .copyright {
	font-size: 1.2rem;
}
.footer-bar {
	padding: 1.5em 0;
	background: #383838;
}
.footer-bar a {
	color: #fff;
}
.footer-bar ul li {
	display: inline-block;
}
.footer-bar ul li:not(:last-child):after {
	content: "|";
	color: #FFF;
	margin-right: 2em;
	margin-left: 2em;
}
.copyright {
	padding: 1em 0 0 0;
	text-align: right;
}

	@media screen and (max-width: 559px) {
	.footer-link, .footer-bar {
		display: none;
	}
	.footer-bar ul {
		font-size: 1rem;
		text-align: center;
	}
	.footer-bar ul li:not(:last-child):after {
		margin-right: 1em;
		margin-left: 1em;
	}
	.copyright {
		text-align: center;
		font-size: 1rem;
	}
	}

/* spのみ ------------------------------------------------　*/
footer .gnav-sp-wrap {
	padding: 35px;
}
footer .gnav-sp a {
	color: #000;
}

	@media screen and (min-width: 560px) {
	footer .gnav-sp-wrap {
		display: none;
	}
	}


/* =====================================================================
	FOOTER下 咨询DLボタンエリア
   ===================================================================== */

/* FOOTER下ボタンエリア spのみ----------------------------------　*/
.bottom-panel {
	display: none;
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 0;
	border: 1px solid #e7e7e7;
}
	@media screen and (min-width: 560px) {
	.bottom-panel {
		display: none !important;
		position: relative;
	}
	}

.bottom-panel > div {
	display: none;
	display: flex;
	align-items: center;
	border-top: 1px solid #f6f6f6;
	border-bottom: 1px solid #f6f6f6;
	width: 100%;
	transition: opacity 1s, transform 0.4s;
	font-size: 1.4rem;
	text-align: center;
}

/* === footer icon 2 or 3 ver.===*/
/* .panel-item {
	width: 50%;
	line-height: 50px;
} 

.panel-item:first-child {
	border-right: 1px solid #e7e7e7;
}
.panel-item a {
	position: relative;
	display: block;
	text-decoration: none;
}
.panel-item a:before {
	content: "";
	display: inline-block;
	margin-right: .7em;
	vertical-align: middle;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
}
.panel-item.dl a:before {
	background-image: url(../images/icon-download-s.svg);
	width: 23px;
	height: 23px;
}
.panel-item.contact a:before {
	background-image: url(../images/icon-tel-mail-s.svg);
	width: 25px;
	height: 25px;
}

*/


/* === footer icon 1 only ver.===*/
.panel-item-full {
	width: 100%;
	line-height: 50px;
}

.panel-item-full:first-child {
	border-right: 1px solid #e7e7e7;
}
.panel-item-full a {
	position: relative;
	display: block;
	text-decoration: none;
}
.panel-item-full a:before {
	content: "";
	display: inline-block;
	margin-right: .7em;
	vertical-align: middle;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
}
.panel-item-full.dl a:before {
	background-image: url(../images/icon-download-s.svg);
	width: 23px;
	height: 23px;
}
.panel-item-full.contact a:before {
	background-image: url(../images/icon-tel-mail-s.svg);
	width: 25px;
	height: 25px;
}



/* FOOTER下ボタンエリア  pcのみ-----------------------------------　*/
.bottom-panel-pc{
	z-index: 1;
	display: flex;
	position: fixed;
	right: 0;
	font-size: 1.4rem;
}

.bottom-panel-pc > div{
	display: block;
	float: left;
}

.bottom-panel-pc a {
	border-top: 1px solid #e7e7e7;
	border-left: 1px solid #e7e7e7;
	line-height: 50px;
}

.bottom-panel-pc .qo a,
.bottom-panel-pc .dl a,
.bottom-panel-pc .contact a{
	display: block;
	/* width: 230px; */
	/* width: 170px; */
	width: 230px;
	background-color: #f6f6f6;
	background-repeat: no-repeat;
	background-position: 10px center;
	color: #de0a20;
	
	text-align: center;
	padding-left: 55px;
	text-decoration: none;
}

.bottom-panel-pc .qo a{
	background-image: url(../images/icon-quotation-s.svg);
	background-size: 24px auto;
}
.bottom-panel-pc .dl a{
	background-image: url(../images/icon-download-s.svg);
	background-size: 24px auto;
}

.bottom-panel-pc .contact a{
	background-image: url(../images/icon-tel-mail-s.svg);
	background-size: 28px auto;
}

.bottom-panel-pc a:hover {
	text-decoration: none;
	background-color: #ccc;
}


/* FOOTER下ボタンエリア ページトップへ---------------------------------------------- */
.pagetop {
	margin: 0;
	font-size: 1rem;
}

#pagetop::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 12px;
	height: 12px;
	margin-top: -5px;
	margin-left: -7px;
	border-left: 3px solid #FFF;
	border-top: 3px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#pagetop {
	display: block;
	position: relative;
	width: 50px;
	text-indent: -9999px;
	background: #de0a20;
	color: #fff;
	text-decoration: none;
}

#pagetop:hover {
	text-decoration: none;
	opacity: 0.7;
}

	@media screen and (max-width: 559px) {
	.bottom-panel-pc,
	.bottom-panel-pc > div,
	.pagetop,.pagetop a{
		display: none;
		position: inherit;
	}
	}


/* =====================================================================
	ライブラリ
===================================================================== */

/* link text ------------------------------------------------*/
.link,.link-b,
.link-list li > a,
.f-link li > a {
	position: relative;
	display: inline-block;
	padding-left: 1.0em;
}

.link {
	padding-left: 1.5em;
}

.link-list li > a,
.f-link li > a {
	color: #000;
}


/* link icon - arrow right--------------------------------- */
.link:before,
.link-b:before,
.link-list li > a:before,
.f-link li > a:before{
	content: "";
	display: block;
	position: absolute;
	top: 13px;
	left: 0;
	width: 5px;
	height: 5px;
	margin-top: -3px;
	border-top: 1px solid #646464;
	border-right: 1px solid #646464;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.link:before{
	width: 6px;
	height: 6px;
}

.link-b:before {
	margin-top: -7px;
	border-top: 2px solid #646464;
	border-right: 2px solid #646464;
}

.link:before,.link-b:before,
.link-list li > a:before{
	top: 15px;
	border-color: #de0a20;
}


/* link icon - window------------------------------------------------------- */
.blank:before {
	display: inline-block;
	content: "";
	width: 15px;
	height: 15px;
	background-image: url(../images/icon-window.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

.blank-back:after {
	display: inline-block;
	content: "";
	width: 15px;
	height: 15px;
	background-image: url(../images/icon-window.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 5px 0 3px;
}

	@media screen and (max-width: 559px) {
	.blank:before,
	.blank-back:after	{
		width: 11px;
		height: 11px;
	}

.blank:before	{
	margin-right: 5px;
}

.blank-back:after	{
	margin: 0 5px 0 3px;
}

}

/*  navigation--------------------------------------------------- */
.pagenav {
	margin-top: 2em;
    margin-left: 0.3em;
}
    @media screen and (max-width: 639px) {
        .pagenav {
        margin-top: 0em;
        margin-bottom: 3em;
        }

    }
.pagenav li {
	display: inline-block;
	margin-right: 2em;
}
.pagenav li a {
	position: relative;
	padding-left: 1em;
}
.pagenav li a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0%;
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -5px;
	border-right: 1px solid #de0a20;
	border-bottom: 1px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*yoshio 2020.9.23*/
.pagenav-business {
	margin-top: 2em;
    margin-left: 4em;
}
    @media screen and (max-width: 639px) {
        .pagenav-business {
        margin-top: 0em;
        margin-bottom: 3em;
        margin-left: 0em;
        }
    }
.pagenav-faq {
	margin-left: 4em;
}
	@media screen and (max-width: 639px) {
		.pagenav-faq {
		margin-top: 0em;
		margin-bottom: 3em;
		margin-left: 0em;
		}
	}
.pagenav-business li,
.pagenav-faq li {
	display: inline-block;
	margin-right: 2em;
}
.pagenav-business li a,
.pagenav-faq li a {
	position: relative;
	padding-left: 1em;
}
.pagenav-business li a:before,
.pagenav-faq li a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0%;
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -5px;
	border-right: 1px solid #de0a20;
	border-bottom: 1px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*--*/


/* table------------------------------------------------------------------------- */
table {
	width: 100%;
	margin-bottom: 1em;
}
table, th, td {
	border-collapse: collapse;
}
th, td {
	padding: 16px;
	vertical-align: middle;
	font-size: 1.4rem;
	border: 1px solid #bbb;
}
table.th-bg th, table.stripe tbody tr:nth-child(odd) td:nth-child(n+2) {
	background: #f6f6f6;
}
.nowrap {
	white-space: nowrap;
}
.va-top td, .va-top td, .va-top {
	vertical-align: top;
}
.va-mid {
	vertical-align: middle;
}
.va-btm {
	vertical-align: bottom;
}

@media screen and (max-width: 959px) {
.table-wrap {
	overflow-x: auto;
	padding: 0 2px;
}
th, td {
	padding: 12px;
	font-size: 1.2rem;
}
}

/* mordal content------------------------------------------------------- */
.modal {
	display: none;
	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
}
.modal__bg {
	background: rgba(0,0,0,0.75);
	height: 100vh;
	position: absolute;
	width: 100%;
}
.modal__content {
	background: #fff;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 60%;
}

@media screen and (max-width: 559px) {
.modal__content {
	width: 90%;
}
}
.modal__content__foot {
	margin: 0 -10px -10px 0;
	padding-top: 30px;
	text-align: right;
}
.js-modal-close {
	position: relative;
	cursor: pointer;
	line-height: 24px;
	font-size: 1.6rem;
}
.js-modal-close::after {
	float: right;
	content: '';
	display: inline-block;
	margin-left: 10px;
	width: 24px;
	height: 24px;
	background-image: url(../images/icon-close.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: cover;
	cursor: pointer;
}


/* media--------------------------------------------------------- */
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* video tag */
.movie-wrap video.modalvideo {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}




/* layout/grid------------------------------------------------- */
.f-container {
	display: flex;
}
.container-fluid, .container {
	clear: both;
	width: 100%;
}

.container {
	margin-right: auto;
	margin-left: auto;
	max-width: 1136px;
}
    @media screen and (max-width: 1136px) {
    .container {
        padding-left: 30px;
        padding-right: 30px;
    }
    }
.container::after, .container-fluid::after {
	content: '';
	display: table;
	clear: both;
}


/* button------------------------------------------------------------ */
.btn-block {
	border-top: 1px #f6f6f6 solid;
	margin-top: 8vh;
	padding: 8vh 0;
}

.btn {
	display: inline-block;
	position: relative;
	margin-bottom: 1.8em;
	padding: 1.1em;
	width: 414px;
	text-align: center;
	line-height: 1.15;
	font-size: 1.4rem;
}
.btn.inherit {
	width: inherit;
}

	@media screen and (max-width: 559px) {
	.btn-block {
		margin-top: 4vh;
		padding: 4vh 0;
	}
	.btn {
		width: 100%;
		padding: 1.5em  1.1em;
		font-size: 1.2rem;
	}
	}

.btn:hover {
	background: #F98688;
	text-decoration: none;
}
.btn.block {
	display: block;
	width: 100%;
}
.btn-group {
	padding-bottom: 3em;
}

	@media screen and (max-width: 559px) {

	}
	@media screen and (min-width: 560px) {
	.btn-group .btn {
		margin-right: .8em;
		margin-left: .8em;
		max-width: 340px;
	}

}
.btn-pill {
	background: #de0a20;
	color: #fff;
	border-radius: 100px;
}
.btn-pill > span {
	display: block;
	position: relative;
	padding: 0 1em;
}
.btn-pill > span:before, .btn-pill > span:after {
	content: "";
	display: block;
	position: absolute;
}
.btn-pill > span:before {
	width: 14px;
	height: 14px;
	background: #fff;
	border-radius: 50%;
	right: 0;
	top: 0px;
}
.btn-pill > span:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #de0a20;
	border-top: 1px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 6px;
	top: 5px;
}
.btn-border {
	border: 2px solid #de0a20;
	border-radius: 100px;
	padding: 1em;
	width: auto;
}
.btn-border-small {
	border: 2px solid #de0a20;
	border-radius: 100px;
	padding: 0.3em;
	width: auto;
}
.btn-border:hover,.btn-border-small:hover {
	background: #de0a20;
	color: #fff;
}

.btn-pill.contact {
	margin-top: 1em;
	margin-bottom: -1.5em;
	padding: .75em .5em;
	max-width: 260px;
}

	@media screen and (max-width: 320px) {
	.btn-pill.contact {
		font-size: 1.1rem;
	}
	}


.simplebtn button{
	background-color: rgb(211, 52, 52);
	border-radius: 30px;
	padding: 15px 40px;
	color: #fff;
	font-weight: bold;
	font-size: 1em;
}
.simplebtn button:hover{
	background-color: rgba(233, 69, 69, 0.801);
}


/* link------------------------------------------------------- */
.arrow-circle {
	position: relative;
	padding: 0 0 0 1.4em;
}
.arrow-circle:before, .arrow-circle:after {
	content: "";
	display: block;
	position: absolute;
}
.arrow-circle:before {
	width: 14px;
	height: 14px;
	background: #de0a20;
	border-radius: 50%;
	left: 0px;
	top: 2px;
}
.arrow-circle:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	left: 4px;
	top: 7px;
}

	@media screen and (max-width: 559px) {
	.arrow-circle {
		padding: 0 0 0 1.8em;
	}
	.arrow-circle:before {
		top: 0px;
	}
	.arrow-circle:after {
		top: 5px;
	}
	}


.plink {
  margin-top:-70px;
  padding-top:70px;
}

	@media screen and (max-width: 559px) {

	}

/* display------------------------------------------------------------- */
.none, .hide-pc {
	display: none;
}

@media screen and (min-width: 960px) {
}

@media screen and (max-width: 959px) {
}

@media screen and (max-width: 559px) {
.br-pc,  .hide-sp {
	display: none;
}
.hide-pc {
	display: inherit;
}
}

@media screen and (min-width: 560px) {
.br-sp {
	display: none;
}
}

.caution {color: #de0a20;}

/* indent  -----------------------------------------------------------*/
.idt1 {
	padding-left: 1em;
	text-indent: -1em;
}

.center-block {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

/* テーブル幅  ----------------------------------------------------------*/
.width90{
		width: 90%;
	}

/* PCテーブル幅  ---------------------------------------------------------*/
@media screen and (min-width: 959px) {
.pc-width90{
		width: 90%;
	}
}

.rbox-border {
	margin-top: 2.5em;
	border-radius: 6px;
	/* border: #f6f6f6 1px solid; yoshio*/
	border: #E1E1E1 1px solid;/*yoshio*/
	padding: 1.5em;
}

.bordered {
	border: #bbb 1px solid;
	padding: 1.5em;
}
.bordered > *:last-child {
	margin-bottom: 0;
}

.border-t {
	border-top: #f6f6f6 1px solid;
}

.border-b {
	border-bottom: #f6f6f6 1px solid;
}

.border-tb {
	border-top: #E8E8E8 1px solid;/* yoshio */
	border-bottom: #E8E8E8 1px solid;/* yoshio */
}


/* list  ----------------------------------------------------------*/
.list-pd-l {
	padding-left: 1.4em;
}

.list {
	margin-bottom: 1.7em;
}

.list-normal {
	padding: 0 0 0 1.5em;
	list-style-type: disc;
}

.list li {
	text-indent: -1em;
	padding-left: 1em;
}

.list-sep li {
	line-height: 1.5em;
	padding-left: 1em;
}

.list-dot li {
	text-indent: -1.2em;
	padding-left: 1.2em;
}
.list-dot li:before {
	content: "・";
}

.list-disc li {
	text-indent: -1.5em;
	padding-left: 1.8em;
}
.list-disc li:before {
	content: "●";
	margin-right: .3em;
}

.list-disc-indent4h li {
	text-indent: -4.5em;
	padding-left: 4.5em;
}
.list-disc-indent4h li:before {
	content: "●";
	margin-right: .3em;
}

.list-squ li {
	text-indent: -1.5em;
	padding-left: 1.8em;
}
.list-squ li:before {
	content: "■";
	margin-right: .3em;
}

.list-ast li {
	text-indent: -1.5em;
	padding-left: 1.8em;
}
.list-ast li:before {
	content: "※";
	margin-right: .3em;
}



/* layout  --------------------------------------------------------------*/
.row-blocks2 {
	justify-content: space-between;
}
.row-blocks2 > .col {
	width: calc( (100% / 2) - 26px );
}
    @media screen and (max-width: 959px) {
    .row-blocks2 > .col {
        width: calc( (100% / 2) - 15px );
    }
    }

    @media screen and (max-width: 559px) {
    .row-blocks2 {
        flex-direction: column;
    }
    .row-blocks2 > .col {
        width: 100%;
    }
    .row-blocks2 > .col:not(last-child) {
        margin-bottom: 2em;
    }
    }

/* img -----------------------------------------------------------------*/
img.full {
	width: 100%;
}
img.centering {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
    @media screen and (max-width: 959px) {
	img.centering {
	top: 0;
	}
	}

/* chape ------------------------------------------------------------------*/
.rounded {
	border-radius: 6px;
}
.quarter-circle {
	position: absolute;
	right: 0;
	bottom: 0;
	display: inline-block;
	width: 63px;
	height: 67px;
	background: #de0a20;
	border-radius: 90px 0 0 0;
	-webkit-border-radius: 90px 0 0 0;
	color: #FFF;
}
.quarter-circle i:before {
	content: "";
	display: inline-block;
	margin: 22px 0 0 22px;
	width: 33px;
	height: 33px;
	background-image: url(../images/icon-zoom-w.svg);
	background-size: contain;
}
.zoom {
	position: relative;
	display: inline-block;
}
.zoom:after {
	position: absolute;
	bottom: 0;
	right: 0;
	content: "";
	display: inline-block;
	margin: 22px 0 0 22px;
	width: 67px;
	height: 67px;
	background-image: url(../images/btn-zoom.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: contain;
}
    @media screen and (max-width: 559px) {
    .zoom:after {
        width: 40px;
        height: 40px;
    }
    }


/* clearfix--------------------------------------------------------------- */
header::after, main::after, footer::after, .row::after, .cf::after {
	content: '';
	display: table;
	clear: both;
}



/*下線ドット------------------------------------------------------------ */
.uline-dot{
	border-bottom:2px #ccc dotted;
	color:#333333;
	position: relative;
}
.no-line a:hover{
	color:#333333;
	background-color: #EDEDED;
	text-decoration: none;
}

.uline{
	border-bottom:1px #ccc solid;
	color:#333333;
}

.textup-box{
	position: relative;
}

.textup-box span.point-g{
	display: none;
}

.textup-box a:hover span.point-g{
	display: block;
    line-height: 1.2em;
    margin: 0.5em;
    padding: 0.5em;
    position: absolute;
	background-color: #fff;
}

/*ボタン-----------------------------------------------------------------*/
.btn-wh {
	display: inline-block;
	position: relative;
	margin-bottom: 1.8em;
	padding: 1.1em;
	width: 414px;
	text-align: center;
	line-height: 1.15;
	font-size: 1.4rem;
}
.btn-wh.inherit {
	width: inherit;
}

	@media screen and (max-width: 559px) {
	.btn-wh {
		width: 100%;
	}
	}

	@media screen and (max-width: 559px) {
	.btn-wh {
		font-size: 1rem;
	}
	}

.btn-wh:hover {
	background: #FFD1D2;
	text-decoration: none;
}
	/* @media screen and (min-width: 560px) {
	.btn-wh {
		margin-right: .8em;
		margin-left: .8em;
		max-width: 340px;
	}
	} */


.btn-dllgi{
	background: #de0a20;
	color: #fff;
	padding-top: 2em;
	padding-bottom: 2em;
}

.btn-link-case{
	background: #fff;
	color: #de0a20;
    border: 1px #de0a20 solid;
	padding-top: 2em;
	padding-bottom: 2em;
	padding-left: 2em;
	padding-right: 2em;
}



/*リンクマーク----------------------------------------------------*/
.arrow-circle2 {
	position: relative;
	padding: 0em 0 0 2em;
}
.arrow-circle2:before, .arrow-circle2:after {
	content: "";
	display: block;
	position: absolute;
}
.arrow-circle2:before {
	width: 14px;
	height: 14px;
	background: #de0a20;
	border-radius: 50%;
	left: 0px;
	top: 2px;
}
.arrow-circle2:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	left: 4px;
	top: 7px;
}

	@media screen and (max-width: 559px) {
	.arrow-circle2 {
		padding: 0 0 0 1.8em;
	}
	.arrow-circle2:before {
		top: 0px;
	}
	.arrow-circle2:after {
		top: 5px;
	}
	}


/*テーブル---------------------------------------------------*/
.t-no-line{
	border: 0;
}


/*ページ内リンク---------------------------------------------------*/
.pg-link{
	margin-top: -117px;
	padding-top: 117px;
}
@media screen and (max-width:560px){
.pg-link{
	margin-top: -56px;
	padding-top: 56px;
}
}

#jpress-f,
#jpress-l,
#jrobot-f,
#jrobot-l{
	margin-top: -117px;
	padding-top: 117px;
}
    @media screen and (max-width:560px){
    #jpress-f,
    #jpress-l,
    #jrobot-f,
    #jrobot-l{
		margin-top: -56px;
		padding-top: 56px;
    }
    }


#calib,#ccd,#hojyojiku,#jr3000-neji,#jr3000-tohu{
	margin-top: -80px;
	padding-top: 80px;
	font-weight: bold;
}
    @media screen and (max-width:560px){
    #calib,#ccd,#hojyojiku,#jr3000-neji,#jr3000-tohu{
        margin-top: -60px;
        padding-top: 60px;
    }
    }

#nagoya,#yamagata,#osaka,#honbu,#fukuoka,#g-usa,#g-mx,#g-deu,#g-shang,#g-shen,#g-taiwan,#g-india,#g-thai{
	margin-top: -180px;
	padding-top: 180px;
}
    @media screen and (max-width:560px){
    #nagoya,#yamagata,#osaka,#honbu,#fukuoka,#g-usa,#g-usa,#g-mx,#g-deu,#g-shang,#g-shen,#g-taiwan,#g-india,#g-thai{
        margin-top: -120px;
        padding-top: 120px;
    }
    }

#sspec-press,#sspec-crobot,#sspec-srobot{
	margin-top: -150px;
	padding-top: 150px;
}
    @media screen and (max-width:560px){
    #sspec-press,#sspec-crobot,#sspec-srobot{
        margin-top: -60px;
        padding-top: 60px;
    }
    }


#anchor1,#anchor2,#anchor3{
	margin-top: -130px;
	padding-top: 130px;
}
    @media screen and (max-width:560px){
    #anchor1,#anchor2,#anchor3{
        margin-top: -70px;
        padding-top: 70px;
    }
    }



/* aリンク 系列名---------------------------------------------------*/
.ptop-sname{

}
.ptop-sname a{

	font-weight: bold;
	color: #081368;
	text-decoration: none;
}

.ptop-sname a:hover{
	background-color: #ADBBD7;
	color: #081368;
}

/* 系列名の上リンク無し */
.ptop-sname_exname{
	/* font-weight: bold; */
}

/* .tbl-spec th, .tbl-spec td.ptop-sname_exname{
	font-size: 1.2em;
	font-size: 1.4em;
	line-height: 1.4;
} */
.tbl-spec th.ptop-sname_exname,.tbl-spec td.ptop-sname_exname{
	/*font-size: 1.2em;boldの場合*/
	font-size: 1.4em;
	line-height: 1.4;
}


/* タイトル---------------------------------------------------*/
.tit-nomal{
    margin-bottom: 1.2em;
    padding-bottom: 0.8em;
    line-height: 1.4;
}
	@media screen and (max-width:980px){
	.tit-nomal{
    padding-bottom: 0;
	}
	}


/* sp関連---------------------------------------------------*/
/* スマホのみ表示---------------------------*/
.sf-ol{
}
	@media screen and (min-width:959px){
	.sf-ol{
		display: none;
	}
	}
/* mordal content------------------------*/
.modal-sp {
	display: none;
	height: 100vh;
	sition: fixed;
  top: 0;
	width: 100%;
	z-index: 999;
}
.modal__bg-sp {
	background: rgba(0,0,0,0.75);
	height: 100vh;
	position: absolute;
	width: 70%;
}
.modal__content-sp {
	background: #fff;
	left: 50%;
	padding: 0px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 10%;
}

	@media screen and (max-width: 559px) {
	.modal__content-sp {
		width: 90%;
	}
	}

.modal__content__foot-sp {
	margin: 0 -10px -10px 0;
	padding-top: 30px;
	text-align: right;
}
.js-modal-close-sp {
	position: relative;
	cursor: pointer;
	line-height: 24px;
	font-size: 1.6rem;
}
.js-modal-close-sp::after {
	float: right;
	content: '';
	display: inline-block;
	margin-left: 10px;
	width: 24px;
	height: 24px;
	background-image: url(../images/icon-close.svg);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: cover;
	cursor: pointer;
}


/* media ------------------------*/
.movie-wrap-sp {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.movie-wrap-sp iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* announce ------------------------------------------------------------------*/

.announce-iq{
	line-height: 1.5em;
	margin: 1em 8em 0em 8em;
	padding: 0.5em 3em;
	border: 1px solid #d90d19;
	border-radius: 5px;
	font-size: 90%;
 }
 .announce-iq span{
	 padding-bottom: 0.5em;
	 display: inline-block;
 }
@media screen and (max-width:1130px){
	.announce-iq{
		margin-left:0em;
		margin-right:0em;
	}
}
@media screen and (max-width:560px){
	.announce-iq{
		margin-left:0em;
		margin-right:0em;
		padding: 0.5em 0.5em;
	}
}


/* ----usual style---------------------------------------------- */
.r-app_li-line{
	border: 1px solid #000;
	padding: 5px 10px;
	margin: 5px 5px;
}
@media screen and (max-width:560px){
	.r-app_li-line{
		border: 0px solid #000;
		padding: 5px 10px;
		margin: 5px 5px;
	}

}





/*=====================================================================
製品詳細
  ===================================================================== */

.box-flex-wr10{
	display: flex;
	flex-wrap: wrap;
	margin: 0px -10px 30px -10px;
}
@media screen and (max-width:639px){
	.box-flex-wr10{
		display:block;
		text-align: center;
	}
}


.img-box-sep{
	width: 50%;
	display: flex;
	flex-wrap:wrap;
}
	@media screen and (max-width: 960px) {
		.img-box-sep {
			width: 100%;
			text-align: center;
			margin-top: 1vh;
		}
	}

.img-box-sep div{
	flex-basis: 50%;
}


.inner-box{
	margin: 0 3vw;
}

.inner-box p.no-style{
	margin-left:1vw;
	padding-right: 1vw;
}
.inner-box-inbox{
	margin-left: 2vw;
	padding: 0 1vw;
}
.inner-box-inbox .ex-txt{
	padding: 0 1vw;
	line-height: 1.5em;
}

.inner-box-inbox .ex-tit {
	margin-bottom:0.5em;
}
.inner-box-inbox .ex-tit:before {
	content: "■";
	margin-right: .3em;
}

.inner-tit_ct{
	margin: 0 auto;
	margin-bottom: 20px;
}

.inner-tit-txt_ct{
	padding: 3px 0;
	text-align: center;
	border-bottom:1px solid #ccc;
	letter-spacing: 2px;
}

.inner-tit-txt_ct-sb{
	text-align: right;
	padding-right:10px;
}

.inner-tit{
	font-size: 100%;
	margin-bottom: 1em;
	padding-left: 1em;
	font-weight: bold;
	line-height: 1.8;
	background: #727171;
	color: #fff;
}
.inner-tit2{
	font-size: 100%;
	margin-bottom: 1em;
	padding-left: 1em;
	font-weight: bold;
	line-height: 1.8;
	background: #dddddd;
}

.inner-tit-div{
	padding-left: 1em;
	margin-bottom: 1em;
}

.text-box2 {
	width: 50%;
}
.image-box2 {
	width: 50%;
}
	@media screen and (max-width: 960px) {
		.text-box2 {
			width: 100%;
		}
		.image-box2 {
			width: 100%;
			margin-top: 1vh;
			text-align: center;
		}
	}

/*機種コード例テキスト-------------------------------------------------*/
.eximg-txt {
	margin:0;
	text-decoration: none;
}

/*ラインナップ------------------------------------------------------*/
.lineup-img {
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start;
}
.lineup-img div {
	margin-bottom: 2vw;
}
	@media screen and (max-width:630px){
		.lineup-img{
			text-align: center;
			flex-direction: column;
		}
		.lineup-img div {
			margin-bottom: 5vw;
		}
	}


.ex-box {
	display: flex;
	margin: 0 auto;
	justify-content: space-between;
	width:80%;
	/* margin-bottom: 2em; */
	margin-bottom: 1em;
}
.ex-box div{
	margin-top: auto;
	text-align: center;
}
.ex-box.r-space div:not(:last-child){
	padding-right: 2em;
}
	@media screen and (max-width:630px){
		.ex-box {
		text-align: center;
		flex-direction: column;
		}
		.ex-box div{
			margin-top: auto;
			text-align: center;
		}
		.ex-box.r-space div:not(:last-child){
			padding-right: 2em;
		}
	}


.ex-box2{
	margin-bottom: 2em;
	display: flex;
}


.modal__bg2 {
	background: rgba(0,0,0,0.75);
	height: 100vh;
	position: absolute;
	width: 100%;
}


/*枠外注記---------------------------------------------------------------*/
.outbox-txt{
	margin: 0 auto;

}


/*線付き囲み--------------------------------------------------------------*/
.line-box{
	border:1px #ccc solid;
	padding:1em;
/*	margin-right:1em;*/
}


/* i22x --------------- */
.i22x-soft_box-tit{
	text-align: center;
	border-bottom:1px solid #ccc;
	margin-bottom: 20px;
}

.i22x-soft_box{
	display: flex;
	padding: 0 2em;
	text-align: center;
}
	@media screen and (max-width:768px){
	.i22x-soft_box{
	display: block;
	padding: 0;
	}
	}

.i22x-soft_box div{
	margin: 0 auto;
	flex-basis: 50%;
	line-height: 1;
	font-size: 12px;
}



/* =====================================================================
DLサイト入り口画面
======================================================================== */
/* 線付き囲み-------------------------------------------------*/

.line-box-dllgi{
	border:1px #DCDCDC solid;
	padding:1em;
	margin-left:10em; margin-right:10em;
}
@media screen and (max-width:560px){
	.line-box-dllgi{
	margin-left:0em; margin-right:0em;
	}
}


/* ===================================================================== 
电子伺服压机の特长
   =====================================================================  */
/*电子伺服压机の特长 - 用途例 表-------------------------------------------------*/

.ptop_caseimg-tit{
	text-align: center;
	padding-bottom: 1em;
}
    @media screen and (max-width:560px){
        .ptop_caseimg-tit{
            text-align: justify;
            padding-left: 2em;
        }
    }
.ptop_caseimg-tit span{
	color: #060B4B;
	font-size: 2rem;
	font-weight: bold; 
}
.ptop_caseimg_box ul{
	display: flex;
	flex-wrap: wrap;
}

.ptop_caseimg_boxin li{
	margin-left: 1.5em;
	margin-bottom: 1em
}


/*电子伺服压机の特长 - item------------------------------------------*/
.ptop_caseimg_boxin li .titem-text01{
	position: absolute;
	text-decoration:none;
	color:#fff;
	padding-left: 3em;
	font-size: 78%;
}
.ptop_caseimg_boxin li .titem-text02{
	position: absolute;
	text-decoration:none;
	color:#fff;
	padding-left: 2.5em;
	font-size: 78%;
}
.ptop_caseimg_boxin li .titem-text03{
	position: absolute;
	text-decoration:none;
	color:#fff;
	padding-left: 2em;
	font-size: 78%;
}
.ptop_caseimg_boxin li .titem-text04{
	position: absolute;
	text-decoration:none;
	color:#fff;
	padding-left: 3em;
	font-size: 78%;
}


/* button ---------------------- */
.ptop_linkbtn{
    background-color: #fff;
	border: 1px solid #DF0623;
    padding: 5px 10px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9em;
}
	@media screen and (max-width: 631px) {
    .ptop_linkbtn{
        padding: px 10px;
        border-radius: 20px;
        text-decoration: none;
        font-size: 0.9em;
        display: block;
        text-align: center;
    }
    .ptop_linkbtn:nth-child(n+1){
        margin-top:1em;
    }
    }
.ptop_linkbtn:hover{
    text-decoration: none;
    background-color: rgb(238, 216, 216);
}
/* button 青 ---------------------- */
.ptop_linkbtn_bl{
	color: #fff;
	background-color: #082381;
	border-radius: 20px;
	text-decoration: none;
	padding: 5px 25px;
	font-size: 0.9em;
}
	@media screen and (max-width: 631px) {
    .ptop_linkbtn_bl{
        padding: 8px 10px;
        display: block;
        text-align: center;
    }
    .ptop_linkbtn_bl:nth-child(n+1){
        margin-top:1em;
    }
    }
.ptop_linkbtn_bl:hover{
	text-decoration: none;
	color: #082381;
	background-color: #0822811e;
	border:1px solid #082381;
	/* background-color: rgba(185, 206, 252, 0.685); */
}

/* ボタン内矢印 ---------------------- */
.arrow-circle_inbtn {
	position: relative;
	/* padding: 0 0 0 1.4em; */
	padding: 0 0 0 20px;
}
.arrow-circle_inbtn:before, .arrow-circle_inbtn:after {
	content: "";
	display: block;
	position: absolute;
}
.arrow-circle_inbtn:before {
	width: 14px;
	height: 14px;
	background: #de0a20;
	border-radius: 50%;
	left: 0px;
	top: 2px;
}
.arrow-circle_inbtn:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	left: 4px;
	top: 7px;
}

	@media screen and (max-width: 559px) {
	.arrow-circle_inbtn {
		padding: 0 0 0 1.8em;
	}
	.arrow-circle_inbtn:before {
		top: 0px;
	}
	.arrow-circle_inbtn:after {
		top: 5px;
	}
	}


/* ラインナップ表---------------------- */
.ptop_tbl-spec {
	width: 998px;
}
.ptop_tbl-spec + .ptop_tbl-spec {
	margin-top: -1px;
}
.ptop_tbl-spec th, .ptop_tbl-spec td {
	padding: 10px 14px;
	font-size: 1.4rem;
}

.ptop_tbl-spec thead th {
	background: #dcdcdc;
	width: 12.5%;
	line-height: 1.2;
}

.test-hover-td td a {
	display: block;
	width:100%;
	height: 100%;
	padding: 0px;
}

.test-hover-td td a:hover{
	display: block;
	background-color: #c7d2e0;
}

/* press top table---------------------------------------------------*/
.ptop-tb tr td{
	padding: 5 0;
	line-height: 1.2;
	font-size: 0.9em;
	vertical-align: middle;
	width: 15%;
}
.ptop-tb tr .mark-l{
	font-size: 20px !important;
}

.ptop-tb td:first-child{
	width: 8%;
}
.ptop-tb td:nth-child(2){
	width: 8%;
}

/* .ptop-tb td{
	vertical-align: top;
	line-height: 1;
}

.ptop-tb a{
	line-height: 1.2;
	font-size: 1.3em;
	font-weight: bold;
	color: #081368;
	text-decoration: none;
	text-align: center;
}
.ptop-sub-sname{
	font-size: 0.8em;
}
.ptop-sub2-sname{
	font-size: 0.65em;
}

.ptop-sname a:hover{
	background-color: #ADBBD7;
	color: #081368;
} */

/* robot top table---------------------------------------------------*/
.rtop-tb tr td{
	padding: 5 0;
	line-height: 1.2;
	font-size: 0.8em;
	vertical-align: top;
	width: 13%;
}
.rtop-tb tr td:first-child{
	vertical-align: middle;
	width: 7%;
}

.rtop-tb a{
	line-height: 1;
	font-size: 1.3em;
	font-weight: bold;
	color: #081368;
	text-decoration: none;
	text-align: center;
}
.rtop-sub-sname{
	font-size: 0.8em;
}
.rtop-sub2-sname{
	font-size: 0.65em;
}
.rtop-sname a:hover{
	background-color: #ADBBD7;
	color: #081368;
}


/* ===================================================================== 
桌上型机器人の特长
   =====================================================================  */
.rtop_caseimg-tit{
	text-align: center;
}
	@media screen and (max-width:560px){
	.rtop_caseimg-tit{
		text-align: center;
	}
	}
.rtop_caseimg-tit span{
	color: #060B4B;
	font-size: 2rem;
	font-weight: bold; 
}

/*桌上型机器人の特长 - 用途例-----------------------------------------------*/
.robot-t-youto ul{
    background-color: rgb(248, 248, 248);
	display: flex;
    text-align: center;
    padding-bottom: 1em;
}
    @media screen and (max-width:560px){
    .robot-t-youto ul{
        display: block;
    }
    }
.robot-t-youto .titem-text01,
.robot-t-youto .titem-text02,
.robot-t-youto .titem-text03,
.robot-t-youto .titem-text04{
    display: block;
}
.robot-t-youto ul img{
	width: 80%;
}
    @media screen and (max-width:560px){
    .robot-t-youto ul img{
        width: 100%;
    }
    }


/*JANOMEのロボット---------------------------------------------*/
.robot-j-ft{
    display: block;
    padding-left:4vw;
}
	@media screen and (max-width:768px){
	.robot-j-ft{
		padding-bottom: 10px; 
		padding-left:0;
		text-align: center;
		width: 100%;
	}
	}

.jrobot-f-stit{
    color: #cc0606;
    background-color: #f6f6f6;
    padding: 0 30px;
    margin-right:3vw;
    text-align: center;
}
	@media screen and (max-width:560px){
	.jrobot-f-stit{
		margin-right:0;
	}
	}


/* iframe */
.robot-j-ft iframe{
    padding: 0 5px 0 0;
    width: 360px;
    height:240px;
} 
	@media screen and (max-width:768px){
		.robot-j-ft iframe{
		padding: 0;
		width: 640px;
		height: 360px;
		}
	}
	@media screen and (max-width:560px){
		.robot-j-ft iframe{
		padding: 0;
		width: 100%;
		height: 100%;
		}
	}

.robot-j-ft video{
    padding: 0 5px 0 0;
    width: 360px;
    height:240px;
} 
	@media screen and (max-width:768px){
		.robot-j-ft video{
		padding: 0;
		width: 640px;
		height: 360px;
		}
	}
	@media screen and (max-width:560px){
		.robot-j-ft video{
		padding: 0;
		width: 100%;
		height: 100%;
		}
	}

.robot-j-ft a{
    padding-left:9vw;
}
	@media screen and (max-width:560px){
		.robot-j-ft a{
   		padding-left:0;
			text-align: center;
		}
	}


.robot-j-tp img {
   margin:0px 10px 10px 0px;
}

.robot-j-tp-nmbox{
    margin: 0 20px 20px 0;
}
	@media screen and (max-width:560px){
	.robot-j-tp-nmbox{
    margin: 0 0 20px 0;
	}
	}

.robot-j-softimg{
	width: 100%;
}
    @media screen and (max-width:560px){
    .robot-j-softimg{
        width: 70%;
    }
    }

.robot-j-tp-nm{
    width: 100%;
    background-color: #3bc3ec;
    color: #fff;
    margin-bottom: 1em;
}

/*桌上型机器人の特长 - ソフトタイトル----------------------------------------------------*/
.ptop_softtit{
	border-bottom: 1px solid #A2A2A2;
	background-color: #EFEFF1;
	margin-bottom: 1.2em;
	padding: .4em;
	line-height: 1.4;
}

.ptop_softtit span{
	font-size: 110%;
	font-weight: bold;
}

/*桌上型机器人 - ラインナップ----------------------------------------------------*/
.rtop_lineup {
	display: flex;
	flex-wrap: wrap;
}

.rtop_lineup a p:first-of-type {
	font-weight:bold;
}
	@media screen and (max-width:630px){
	.rtop_lineup a p:first-of-type {
		font-size: 1.5em;
	}
	}

.rtop_lineup a {
	padding: 10px;
	margin-right: 8px;
	margin-bottom: 8px;
	border:1px solid #C5C5C5;
	border-radius: 2px;
	background-color: #eeeeee79;
	width: 24.1%;
	text-decoration: none;
	color: #081368;
}
	@media screen and (max-width:1136px){
	.rtop_lineup a {
		width: 23.6%;
		/* background-color: #fff; */
		background-color: rgb(250, 250, 250);
	}
	}
	@media screen and (max-width:630px){
		.rtop_lineup a {
			width: 100%;
			/* background-color: #fff; */
			background-color: rgb(250, 250, 250);
		}
	}

.rtop_lineup a:hover {
	cursor: pointer;
	background-color: #fff;
}

.filter_groups{
	margin-bottom: 50px;
}
@media screen and (max-width:630px){
.filter_groups{
	margin-bottom: 20px;
}
}




 


/* ===================================================================== 
水平多关节机器人 首页
=====================================================================  */
/* tab menu------------------- */
.nav-tabmenu-srtop {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.tabmenu-srtop {
	display: flex;
	width: 100%;
	max-width: 1000px;
	text-align: center;
}
.tabmenu-srtop a {
	display: block;
	color: #000;
	text-decoration: none;
}
.tabmenu-srtop > li {
	margin-right: 2px;
	width: 25%;
	position: relative;
}
.tabmenu-srtop > li > a {
	position: relative;
	border-top: 2px solid #f6f6f6;
	background: #f6f6f6;
	line-height: 58px;
}
/* 2025.04.21---------------- */
.tabmenu-srtop > li.tabmenu-longtxt > a{
	line-height: 2.5rem;
	padding: 6px 0;
}
/* ---------------- */
.tabmenu-srtop li.current > a, .tabmenu-srtop li > a:hover {
	background: #dcdcdc;
}
.tabmenu-srtop li.current > a {
	border-top: 2px solid #de0a20;
}
.tabmenu-srtop > li.current > a:after, .tabmenu-srtop > li.current ul:after {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #dcdcdc;
}
.tabmenu-srtop > li.current ul:after {
	border-top: 10px solid #fff;
}
.tabmenu-srtop > li.parent > a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10%;
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -5px;
	border-right: 2px solid #de0a20;
	border-bottom: 2px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.tabmenu-srtop > li.parent > a {
	padding-right: 1em;
}
.tabmenu-srtop .pulldown {
	display: none;
	position: absolute;
	top: 58px;
	left: 0;
	width: 100%;
	padding: 6px 0;
	background: #f6f6f6;
	z-index: 1;
}
.tabmenu-srtop > li .pulldown li {
	position: relative;
}
.tabmenu-srtop > li .pulldown li a {
	line-height: 40px;
	font-size: 1.4rem;
}

.btn-group-dl-imp .btn {
	margin: 0 4px;
	width: 175px;
	font-size: 1.4rem;
	letter-spacing: -0.05em;
}

@media screen and (max-width: 1136px) {
.tabmenu-srtop {
	width: calc(100% - 130px);
}
.tabmenu-srtop > li > a {
	font-size: 1.4rem;
}
.btn-group-dl-imp .btn {
	width: 150px;
	font-size: 1.2rem;
}
}

@media screen and (max-width: 959px) {
.tabmenu-srtop {
	max-width: none;
	width: 100%;
	max-width: 959px;
}
.btn-group-dl-imp {
	display: none;
}
}

@media screen and (max-width: 869px) {
.tabmenu-srtop {
	max-width: none;
	flex-direction: column;
	margin-bottom: 3em;
	text-align: left;
}
.tabmenu-srtop > li {
	margin-right: 0;
	margin-bottom: 2px;
	width: 100%;
}
.tabmenu-srtop > li.parent > a:before {
	right: inherit;
	left: 15px;
	margin-top: -3px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.tabmenu-srtop li.current > a {
	border-top: 2px solid #f6f6f6;
}
.tabmenu-srtop > li.current a:after {
	content: none;
}
.tabmenu-srtop > li > a {
	padding: 0 1em 0 2.5em;
	line-height: 40px;
}
.tabmenu-srtop > li .pulldown {
	position: inherit;
	top: inherit;
	left: inherit;
	padding: 2px 3px;
}
.tabmenu-srtop > li .pulldown li a {
	line-height: 40px;
	padding: 0 2.5em;
	background: #FFF;
	border-bottom: 1px solid #e6e6e6;
}
}

/* ===================================================================== 
インプリンタ 首页
=====================================================================  */
/*tabmenu-----------------------------------------------------------*/
.nav-tabmenu-imp {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.tabmenu-imp {
	display: flex;
	width: 100%;
	max-width: 800px;
	text-align: center;
}
.tabmenu-imp a {
	display: block;
	color: #000;
	text-decoration: none;
}
.tabmenu-imp > li {
	margin-right: 2px;
	width: 30%;
	position: relative;
}
.tabmenu-imp > li > a {
	position: relative;
	border-top: 2px solid #f6f6f6;
	background: #f6f6f6;
	line-height: 58px;
}
.tabmenu-imp li.current > a, .tabmenu-imp li > a:hover {
	background: #dcdcdc;
}
.tabmenu-imp li.current > a {
	border-top: 2px solid #de0a20;
}
.tabmenu-imp > li.current > a:after, .tabmenu-imp > li.current ul:after {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #dcdcdc;
}
.tabmenu-imp > li.current ul:after {
	border-top: 10px solid #fff;
}
.tabmenu-imp > li.parent > a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10%;
	display: block;
	width: 5px;
	height: 5px;
	margin-top: -5px;
	border-right: 2px solid #de0a20;
	border-bottom: 2px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.tabmenu-imp > li.parent > a {
	padding-right: 1em;
}
.tabmenu-imp .pulldown {
	display: none;
	position: absolute;
	top: 58px;
	left: 0;
	width: 100%;
	padding: 6px 0;
	background: #f6f6f6;
	z-index: 1;
}
.tabmenu-imp > li .pulldown li {
	position: relative;
}
.tabmenu-imp > li .pulldown li a {
	line-height: 40px;
	font-size: 1.4rem;
}

@media screen and (max-width: 1136px) {
.tabmenu-imp {
	/*width: calc(100% - 330px);*/
	width: calc(100% - 130px);
}
.tabmenu-imp > li > a {
	font-size: 1.4rem;
}
}

@media screen and (max-width: 959px) {
.tabmenu-imp {
	max-width: none;
	width: 100%;
	max-width: 959px;
}
}

@media screen and (max-width: 869px) {
.tabmenu-imp {
	max-width: none;
	flex-direction: column;
	margin-bottom: 3em;
	text-align: left;
}
.tabmenu-imp > li {
	margin-right: 0;
	margin-bottom: 2px;
	width: 100%;
}
.tabmenu-imp > li.parent > a:before {
	right: inherit;
	left: 15px;
	margin-top: -3px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.tabmenu-imp li.current > a {
	border-top: 2px solid #f6f6f6;
}
.tabmenu-imp > li.current a:after {
	content: none;
}
.tabmenu-imp > li > a {
	padding: 0 1em 0 2.5em;
	line-height: 40px;
}
.tabmenu-imp > li .pulldown {
	position: inherit;
	top: inherit;
	left: inherit;
	padding: 2px 3px;
}
.tabmenu-imp > li .pulldown li a {
	line-height: 40px;
	padding: 0 2.5em;
	background: #FFF;
	border-bottom: 1px solid #e6e6e6;
}
}

/* button-imp------------------------------------------------- */
.btn-imp {
	display: inline-block;
	position: relative;
	margin-bottom: 1.8em;
	padding: 1.1em;
	width: 414px;
	text-align: center;
	line-height: 1.15;
	font-size: 1.4rem;
}
.btn-imp.inherit {
	width: inherit;
}

@media screen and (max-width: 559px) {
.btn-imp {
	width: 100%;
}
}

@media screen and (max-width: 559px) {
.btn-imp {
	font-size: 1rem;
}
}
.btn-imp:hover {
	background: #F98688;
	text-decoration: none;
}
.btn-imp.block {
	display: block;
	width: 100%;
}
.btn-group-imp {
	padding-bottom: 3em;
}

@media screen and (min-width: 560px) {
.btn-group-imp .btn-imp {
	margin-right: .8em;
	margin-left: .8em;
	max-width: 340px;
}
}
.btn-pill-imp {
	background: #de0a20;
	color: #fff;
	border-radius: 100px;
}
.btn-pill-imp > span {
	display: block;
	position: relative;
	padding: 0 1em;
}
.btn-pill-imp > span:before, .btn-pill > span:after {
	content: "";
	display: block;
	position: absolute;
}
.btn-pill-imp > span:before {
	width: 14px;
	height: 14px;
	background: #fff;
	border-radius: 50%;
	right: 0;
	top: 0px;
}
.btn-pill-imp > span:after {
	width: 3px;
	height: 3px;
	border-right: 1px solid #de0a20;
	border-top: 1px solid #de0a20;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 6px;
	top: 5px;
}
.btn-border-imp {
	border: 2px solid #de0a20;
	border-radius: 100px;
	padding: 1em;
	width: auto;
}
.btn-border-imp:hover {
	background: #de0a20;
	color: #fff;
}

@media screen and (max-width: 559px) {
.btn-imp {
	width: 100%;
}
}

@media screen and (max-width: 559px) {
.btn-imp {
	font-size: 1rem;
}
}
.btn-imp:hover {
	background: #F98688;
	text-decoration: none;
}
.btn-imp.block {
	display: block;
	width: 100%;
}
.btn-group-imp {
	padding-bottom: 3em;
}



/* ===================================================================== 
ねじ供給機 TOP
=====================================================================  */
.sf-ft_img-line{
	padding: 5px 5px 0 5px ;
	border: 1px solid #30afdf;
	border-radius: 10px;
}
.sf-ft_pointtext{
	background-color: #d5ecf5;
	padding: 0 10px;
}
.sf-ft_pointtext-line{
	background-color: #d5ecf5;
	border: 1px solid #7bcfee;
	padding: 0 10px;
}


/* ======================================================================
産機案内
====================================================================== */
.bsn-of-subtit{
    background-color: #f2f2f2;
    padding: 12px 0px 12px 15px;
    font-weight:normal;
}
.bsn-of-subtit-ex{
    padding: 0px 0px 0px 5px;
    font-weight:normal;
	 font-size: 1.1em;
}

.bsn-textbox{
	width: 70%;
	border-top: 1px solid #C5C5C5; 
 }
	@media screen and (max-width: 631px) {
		.bsn-textbox{
			width: 100%;
			display:block;
			border-top: 1px solid #C5C5C5; 
			margin-bottom: 1em;
		}
	}

.bsn-textbox p{
	margin-top: 10px;
}

.bsn-imgbox{
	width: 30%;
	text-align: center;
}
	@media screen and (max-width: 631px) {
		.bsn-imgbox{
			width: 100%;
			display:block;
            margin-bottom: 2em;
		}
	}

.bn-index-linkbtn{
    background-color: rgb(228, 228, 228);
    padding: 5px 10px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9em;
}
.bn-index-linkbtn:nth-child(n+1){
    margin-right:1em;
}

	@media screen and (max-width: 631px) {
    .bn-index-linkbtn{
        background-color: rgb(228, 228, 228);
        padding: 5px 10px;
        border-radius: 20px;
        text-decoration: none;
        font-size: 0.9em;
        display: block;
        text-align: center;
    }
    .bn-index-linkbtn:nth-child(n+1){
        margin-top:1em;
    }
    }
.bn-index-linkbtn:hover{
    text-decoration: none;
    background-color: rgb(241, 241, 241);
}


/*産機案内 - 历史---------------------------------------------------------*/
.tbl-history td:last-child{
	text-align: center;
}
	@media screen and (min-width: 631px) {
		.tbl-history td:nth-child(2){
			border-right:none;
		}
		.tbl-history td:last-child{
			border-left:none;
		}
	}

	@media screen and (max-width: 630px) {
		.tbl-history tr,
		.tbl-history td{
			display:block;
			width: 100%;
		}
		.tbl-history td:not(:first-of-type){
			border-top:none;
		}
		.tbl-history td:not(:last-of-type){
			border-bottom:none;
		}
	}

.tbl-history td{
    font-size: 1.8rem;
}

.history-m{
    letter-spacing: .2rem;
}

	@media screen and (min-width: 631px) {
	.tbl-history td:first-child {
		width:20%;
	}
	.tbl-history td:nth-child(2){
		width:60%;
	}
	}

.history-yeartit{
	font-style: italic;
	font-size: 3rem; 
}
.history-yeartit span{
	font-size:2rem;
}


/*産機案内 - 日本国内营业所--------------------------------------------------*/

.bsn-officebox{
		display:block;
		width: 100%;
}

.bsn-officetbl td:first-child{
    width:20%;
}


/* ======================================================
售后服务
   ======================================================*/
/* ページ内通知枠 -----------------------*/
.pageinner-info{
	border: 1px solid #fdc3c9;
	padding: 5px 10px;
	border-radius: 5px;
	margin-left: 10px;
	margin-right: 10px;
}

/* index内 ボタン -----------------------*/
.afs-btn{
	display: block;
	/* margin-right: 5%; */
	margin-left: 5%;
	padding: 1.9em 1.1em;
	background-color:#fff;
	border: 1px #DE0A20 solid;
	width:414px;
	text-align: center;
	line-height: 1.15;
	font-size: 1.4rem;
}
	@media screen and (max-width:560px){
	.afs-btn{
	margin-left: 0;
		width: 100%;
		margin-bottom: 2em;
	}
	}

.afs-btn:hover {
	background: #fde7e7;
	text-decoration: none;
}

/* プレスロボット -----------------------*/
.afs-box h3{
	margin-bottom: 1em;
}
.afs-box h4{
	margin-left: 1.5em;
	margin: 1.8em 0 0.5em 1.5em;	
}


/* PDFリンク -----------------------*/
.afs-pressrobot_pdf ul li{
	/* display: inline-block; */
	margin: 0.3em 1.3em;
	line-height: 1.5;
}
	@media screen and (max-width:560px){
	.afs-pressrobot_pdf ul li{
		display: block;
		margin: 1em 1.3em;
	}
	}

.afs-pressrobot_pdf span::before,.afs-imprinter_pdf span::before{
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-image: url(../images/PDF_24.png);
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: cover;
	position: relative;
	top: 5px;
	margin-right: 5px;;
}

/* インプリンタ -----------------------*/
.afs-imp_movbtm{
}

	@media screen and (max-width:560px){
	.afs-imp_movbtm div{
		margin-bottom: 2em;
	}
	}

/* 販売・保守サービス終了製品 -----------------------*/
.afs-serbive_td td:not(:nth-last-child(-n+2)){
	white-space: nowrap;
}


/* ======================================================
特殊规格内容
   ======================================================*/

.sspec-sbox{
	display: flex;
}
	@media screen and (max-width:560px){
		.sspec-sbox{
		display: block;
		width: 100%;
		text-align: center;
		}
	}

.sspec-sbox div{
	width: 25%;
	height: 100%;
	background-color:#fff6f6;
	margin: 1em 1em 1em 0;
	border-radius: 5px;
	padding: 0 5px;
	text-align: center;
}
	@media screen and (max-width:560px){
	.sspec-sbox div{
		width: 100%;
	}
	}

.sspec-sbox h4{
	font-weight: normal;
	font-size: 1em;
	margin:0;
}

.sspec-sbox p{
	font-size: 0.8em;
	margin: 0;
	text-align: center;
}
	@media screen and (max-width:560px){
		.sspec-sbox p{
			font-size: 1em;
		}
	}

.sspec-sbox span{
	font-weight: bold;
	border-bottom: 1px solid rgb(134, 134, 134);
}

.sspec-sbox img{
	padding: 10px 0;
	 width: 190px;
}


/* ======================================================
通知ページ
   ======================================================*/

.news-item{
	margin: 0 10px;
}
	@media screen and (max-width:768px){
	.news-item{
	margin: 1em 0;
	}
	}

.news-item div{
	display: inline-block;
	line-height: 1.5;
	margin-top: 10px;
	margin-bottom: 10px;
}
	@media screen and (max-width:768px){
		.news-item div{
			margin: 0;
		}
		.news-item div:last-child{
			margin-bottom: 10px;
		}
	}

.news-date{
	width: 10%;
	padding-bottom: 0;
	vertical-align: top;
	margin-right: 15px;
}
	@media screen and (max-width:768px){
	.news-date{
		width: 30%;
	}
	}

.news-tag_n{
	border: 1px solid rgb(233, 109, 8);
	/* color: rgb(211, 85, 2); */
	width: 10%;
	text-align: center;
	font-size: 0.9em;
	vertical-align: top;
}
.news-tag_p{
	border: 1px solid rgb(8, 91, 235);
	width: 10%;
	text-align: center;
	display: block;
	font-size: 0.9em;
}
	@media screen and (max-width:768px){
	.news-tag_p,.news-tag_n{
		width: 30%;
	}
	}

.news-txt{
	vertical-align: top;
	width: 70%;
	padding-left: 20px;
}
	@media screen and (max-width:768px){
	.news-txt{
	padding-left: 0;
	}
	}


.news-txt a{
	color: #000;
	text-decoration: underline;
}
	@media screen and (max-width:768px){
	.news-txt{
		display: block;
		width: 100%;
	}
	}



/* ======================================================
网站地图
   ======================================================*/
.stmap-style a{
	text-decoration: underline;
	color: #000;
}

.stmap-style h2{
	font-size:1.2em;
}
.stmap-style h2 a{
	font-weight: bold;
}

.stmap-style h3{
	font-size:1.2em;
}

.stmap-sbox{
	width: 33%;
}
	@media screen and (max-width:768px){
	.stmap-sbox{
		width: 100%;
		margin-bottom: 2em;
	}
	}

.stmap-link li{
	line-height: 1.8;
}

.stmap-link li > a {
	position: relative;
	display: inline-block;
	padding-left: 1.0em;
}

.stmap-link li > a:before{
	content: "";
	display: block;
	position: absolute;
	top: 13px;
	left: 0;
	width: 5px;
	height: 5px;
	margin-top: -3px;
	border-top: 1px solid #646464;
	border-right: 1px solid #646464;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
	@media screen and (max-width:560px){
	.stmap-link li > a:before{
		top: 11px;
	}
	}




/*用語説明枠*/
.ti-subtxt{
	margin:0 0 30px 40px ;
	padding: 5px 15px;
	border:1px #ccc dotted;
	/* width: 60%; */
}
	@media screen and (max-width:680px){
	.ti-subtxt{
		width: 100%;
		margin:0 0 30px 0px ;
	}
	}
	/* @media screen and (min-width:679px){
	.ti-subtxt.w70{
		width: 70%;
	}
	} */

 .ti-subtxt p{
	margin-bottom:0px;
	display: flex;
}

.ti-subtxt02{
	width: auto;
	margin:0 0 30px 40px ;
	padding: 5px 15px;
	border:1px #ccc dotted;
	width:85%;
}
.ti-subtxt02 p{
	margin-bottom:0px;
	display: flex;
}

.ti-lineupbox{
	display: flex;
}
	@media screen and (max-width:560px){
	.ti-lineupbox{
	display: block;
	/* text-align: center; */
	}
	}

	@media screen and (min-width:561px){
	.ti-lineupbox .ti-lineupbox-l{
		flex-basis: 50%;
		padding: 0 20px;
		text-align: center;
	}
	}

.ti-lineupbox-txt{
	padding-top: 1em;
	line-height: 1.5;
	text-align: left;
}


/* =================================
告知ページ
=================================*/
.letter-extxt-imgbox{
	display: flex;
	border:1px #ccc dotted;
	padding: 20px;
	border-radius: 10px;
	margin: 10px 140px 30px 120px;
}
.letter-extxt-imgbox p img{
			width: 90%;
			padding-left: 20px;
}
	@media screen and (max-width:561px){
		.letter-extxt-imgbox{
			display: block;
			padding: 10px;
			margin: 10px 0 30px 0;
		}
		.letter-extxt-imgbox p img{
			text-align: center;
			width: 50%;
		}
	}

.letter-extxt-imgbox p{
	margin-bottom: 0;
}



/* ================================================================== */
.hidden{
	display: none;
}

/* 販売終了ページ================================================= */
@media screen and (min-width:1000px){
.endbd-btm{
	border-bottom: 1px #E8E8E8 solid;
}
}

/* =================================
FAQ
=================================*/
:root{
	--red: #cc2c2f;
	--palegray:#d5d5d5;
}

h3.faq-h3{
	border: 1px solid var(--palegray);
	border-radius: 10px;
	padding: 10px 42px 10px 51px;
	margin: 0 0 1.2em;
	display: block;
	position: relative;
	cursor: pointer;
	background-color: #f6f6f6;
	font-weight: normal;
	font-size: 19px;
	text-indent: -1.8em;
}
	@media print, screen and (max-width: 767px) {
	h3.faq-h3{
	font-size: 16px;
	}
	}

h3.faq-h3:hover{
	background-color: #ebebeb;
}
	@media print, screen and (max-width: 767px) {
	h3.faq-h3{
		padding: 10px 28px 10px 33px;
	}
	}

.Qmark {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: var(--red);
	display: inline-block;
	font-weight: bold;
	text-align: center;
	line-height: 30px;
	color: #fff;
	font-family: Helvetica;
	text-indent: 0em;
}
.Amark {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: var(--red);
	display: inline-block;
	font-weight: bold;
	text-align: center;
	line-height: 30px;
	color: #fff;
	font-family:Helvetica;
	font-size: 1.3em;
	padding: 0 8px;
}

.faq_infobox_text-box{
	margin: 0 0 0 10px;
}
	@media print, screen and (max-width: 767px) {
	.faq_infobox_text-box{
	font-size: 16px;
	line-height: 1.5;
	}
	}

.faq_infobox_text-box a,.faq-others-box a{
	text-decoration-line:underline;
}

h3.faq-h3::after {
	content: "";
	position: absolute;
	top:15px;
	right:30px;
	display: block;
	width: 12px;
	height: 12px;
	border-right: 3px solid var(--red);
	border-top: 3px solid  var(--red);
	transform: rotate(45deg);
	transition: all 0.3s;
}
	@media print, screen and (max-width: 767px) {
		h3.faq-h3::after {
		top: 15px;
		right: 13px;
		}
	}

h3.faq-h3.selected::after {
	transform: rotate(135deg);
}

.faq_content{
	display: none;
	padding: 0 20px 0 20px;
}
	/* @media print, screen and (max-width: 767px) { */
	@media screen and (max-width: 959px) {
	.faq_content{
	padding: 0 20px 0 10px;
	}
	}

.faq_infobox_text{
	margin: 0 0 1.2em -0.2em;
	display: flex
}

	@media screen and (max-width: 959px) {
	.faq_infobox_text{
		margin: 0 0 1.2em 0.7em;
		display: flex
	}
	}
	@media screen and (max-width: 767px) {
	.faq_infobox_text{
		margin: 0 0 1.2em -0.3em;
		display: flex
	}
	}


/* FAQ h2 title--------------------------------- */
.faq-ttl-border {
    margin-bottom: 1.2em;
    border-bottom: 1px solid #C5C5C5;
    line-height: 2.4;
}
	@media screen and (max-width: 767px) {
	.faq-ttl-border {
    line-height: 1.5;
	}
	}

.faq-ttl-border-nmb {
	margin-bottom: 0.3em;
	border-bottom: 1px solid #C5C5C5;/*yoshio*/
	padding-bottom: 0.8em;
	line-height: 1.4;
}
.faq-ttl-border-l {
	padding: 0 1em;
	border-left: 2px solid #de0a20;
}

.faq-ttl-border-l.h3 {
	 margin-bottom: 0.6em;
}

.faq-ttl-border-none{
	margin-bottom: 1em;
	line-height: 1.4;
}

/* その他一般的なご質問 */
details{
	cursor: pointer;
	list-style: none;
	margin-bottom: 0.2em;
}
details:hover{
	background-color: #f6f6f6;
}
details[open] > summary{
	border-bottom: 1px solid #9c9c9c;
	padding-bottom: 0.2em;
	margin-bottom:0.5em;
}
.faq-others-box{
	margin: 0 0 2em 1em;
	line-height: 1.6em;
}
	@media screen and (max-width: 767px) {
	.faq-others-box{
		font-size: 1.2em;
	}
	}

.faq-others-box p{
	line-height: 1.6em;
}

.faq_infobox_text-box a,.faq-others-box a{
	text-decoration-line:underline;
}

/* // FAQ ===========================*/



/* =====================================================================
policy
======================================================================== */

.policy-wrap {
	padding: 30px 60px 40px ;
}
    @media screen and (max-width: 980px) {
    .policy-wrap {
        padding: 2em 0 2em 0;
        width: 100%;
    }
    }

.policy-wrap h3{
	margin-top: 2em;
}
.policy-wrap h4{
	margin-top: 1em;
	padding-left: 2vw;
}

.policy-indent{
	margin-left: 2vw;
}

.policy-indent02{
	margin-left: 3.4vw;
}

.policy-indent-hung01{
	padding-left: 4em;
	text-indent: -4em;
}
.policy-indent-hung02{
	padding-left: 4em;
	text-indent: -3em;
}


/* govmark under the footer===== */
.footer-gov{
	display: flex;
	margin: 0 auto;
	padding-bottom: 10px;
}

.footer-gov div{
	padding-right: 10px;
	margin: 0;
	line-height: 1;
	/* height: 47px; */
	margin-top: auto;
}

.footer-gov p.footer-gov-text{
	color: #000;
	text-decoration: underline;
}



    /* @media screen and (max-width:560px){
        .footer-gov{
			display: block;
        }
        .footer-gov p{
			margin-bottom: 0.5em;
        }
    } */