@charset "UTF-8";

/*目次
reset
base
font
form
page
header
Main
heading
breadcrumb
TOP - MV
TOP
Products
layout
column:
Sample Applications
FOOTER:	sp
FOOTER下 
ライブラリ
製品詳細
DLサイト入り口画面
Servo Presses
Desktop Robots
SCARA Robots TOP
インプリンタ
産機案内
After Sales Service
Speciality Specification
NEWS
Site Map
screw feeders
policy
販売終了
*/



@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: "メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "MS Pゴシック", "MS PGothic", 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: 32%;
	display: block;
	right: 6%;
	width: 13px;
	height: 13px;
	background-image: url(../images/icon-window_s13.png);
	margin-top: -4px;
}
/* langlist mark ＞ */
/* .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: 465px; large size test*/
	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; */
	margin-left: 48px;
}

@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-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;
}

/*original*/
.submenu__content__list dl dt dd {
	/* padding-left: 1.4em;
	font-size: 1.2rem; */
	font-size: 1.2rem;
}

/* add */
.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 (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: 1.1;
	padding: 0.5em 0;
}
.gnav-sp li a {
	display: block;
	font-weight: bold;
}
.gnav-sp li > ul >li:before {
	content: "";
	position: absolute;
	top: .3em;
	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;
	line-height: 1.3;
}
	@media  screen and (max-width:980px){
	.gnav-sp li > ul {
	 padding-top: 1em;
	}
	.gnav-sp li > ul li:not(:last-child) {
	line-height: 1.3;
	margin-bottom: 10px;
	}
	}
.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;
	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;
}


p {
	margin-bottom: 1.4em;
	line-height: 1.875;
	/* word-break: break-all; */
	word-break:break-word;
}
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 - MV
===================================================================== */
#top-main {
	display: flex;
	width: 100%;
	height: 380px;
	background-image: url(../images/main/01.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;
}

/* slogan------------------- */
#top-main #slogan {
	margin-top: -66px;
	/* padding: 15px 25px; */
	padding: 15px 100px;
	background: linear-gradient(50deg,rgba(32, 163, 206,0.5), rgba(254,251,251,0.5) 10%, rgba(254,251,251,0.9) 25%, rgba(254,251,251,1.0) 50%,rgba(254,251,251,0.5) 85%,rgba(32, 163, 206,0.5));
}
#top-main #slogan h1 {
	font-size: 4rem; /*3.2rem*/
	line-height: 1.2;
	margin-bottom: 0;
	font-weight: bold;
	letter-spacing: 0;	/*0.1em */
}	
	@media screen and (max-width: 799px) {
		#top-main #slogan {
			padding: 5px 20px;
			background: linear-gradient(50deg,rgba(32, 163, 206,0.5), rgba(254,251,251,0.5) 10%, rgba(254,251,251,0.9) 25%, rgba(254,251,251,0.8) 50%,rgba(254,251,251,0.3) 85%,rgba(32, 163, 206,0.1));
		}
		#top-main #slogan h1 {
		font-size: 5vw;
		}
	}

#top-main #slogan strong {
	color: #de0a20;
	text-shadow: 2px 3px 0px rgba(255, 255, 255,0.6);
	/* font-family:'Segoe UI', Tahoma, Geneva; */
	font-family:  Verdana, sans-serif;
	font-size: 1em;
}

/* /slogan ----------- */



/* 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;
	/* margin-top: 10px; */
}

#news-slider .siema div {
	vertical-align: middle;
	/* padding: 10px 0; */
}

#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
===================================================================== */
.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下重要なNEWS(マーク入り)-------------------------------- */
.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下NEWS --------------------*/
.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下NEWS 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箇所 -------------------------------------------- */
.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;
}

@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;
	line-height: 1.5; /* eng only */
}

.info-col .text {
	margin-bottom: 0;
	font-size: 1.2rem;
}





/* =====================================================================
	Productsページ
===================================================================== */

.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: 0em;
	}
	}

	@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 p {
	line-height: 1.5;
}
.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%;
	}
	}

/* Productsページ - 導入例箇所----------------------------------- */
.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%;
}
.case-example .col3 {
	width: 30.8%;
}

@media screen and (min-width: 1340px) {
.case-example .col-2 {
	width: 530px;
}
}
.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);
}


/* Productsページ - Contact Us--------------------------------------------------- */
.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-image: url(../images/contact-01-1.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;
}
}


/* Productsページ - Contact Us ページ下部------------------------------------------- */
.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;
}
}


/* =====================================================================
Products
===================================================================== */
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;
		}
	}

.p-top_list-n li{
	line-height: 1.3;
	padding-top: 10px;

}


/* 製品ページ - 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.long-tab {
	margin-right: 2px;
	width: 30%;
	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;
	font-size: 1.4rem;/*プルダウンa無しを追加した場合*/
}
.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 {
			line-height: 40px;
			padding: 0 2.5em;
			background: #FFF;
			border-bottom: 1px solid #e6e6e6;
		}
		/* .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: 1.8rem;
		line-height: 1.2;
		padding-bottom: 0.5em;
		padding-left: 0em;
	}
	}

.bg-modelname {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 100% center;
	background-size: auto 110%;
}
.bg-modelname.vertical {
	background-position: 95% center;
	background-size: auto 85%;
}

@media screen and (max-width: 959px) {
.bg-modelname.vertical {
	background-size: auto 60%;
}
}
.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) {
.bg-modelname {
	display: none;
}
.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 0;
	text-align:center;
	font-size:2.5rem;
}
	@media screen and (max-width: 559px) {
	.img-code2 {
		text-align:left;
		font-size:1.5rem;
	}
	}

.img-code2 img{
	margin-left: 1em;
	padding: 0.8em;
	border-radius: 5px;
	border: #E7E7E7 1px solid;
}
	@media screen and (max-width: 559px) {
	.img-code2 img{
	margin-left: 0;
	padding: 0.8em;
	}
	}



/* 製品ページ - 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;
}
	@media screen and (max-width:980px){
		.tbl-spec th, .tbl-spec td {
			padding: 7px 10px;
			font-size: 1.3rem;
		}
	}

.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-model td.td-sty-left {
	text-align: left;
}


.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;
}


.tbl-spec tr.w100{}

/* =====================================================================
	layout
===================================================================== */

.col4,.column-container {
	justify-content: space-between;
	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;
}
}



/* =====================================================================
	コラムページ
===================================================================== */

/* トップページ・製品トップ共通  コラム4記事--------------------  */

.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;
		}
	}


/* コラムTOP------------------------------------------------------  */

.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-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;
}

.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;
}
}


.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;
}

.article-body .wrap > div{
	width: 48%;
}

.article-body .wrap.photo-r{
	flex-direction: row-reverse;
}

.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;
}

@media screen and (max-width: 559px) {
.article-body .wrap {
	display: block;
}

.article-body .wrap > div{
	width: 100%;
}
}


/* ページ送り--------------------------------------------------------------*/
.pager  .pagination {
  text-align: center;
	font-size: 1.2rem;
	font-family: Arial, Helvetica, "sans-serif";
}

.pager .pagination li {
  display: inline;
  margin: 0 4px;
  padding: 0;
  display: inline-block;
  width: 35px;
  height: 35px;
  text-align: center;
  position: relative;
}

.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%;
  }

.pager .pagination li a:hover,
.pager .pagination li a.active{
  color: #fff;
  background: #d90d19;
}

	@media only screen and (max-width: 559px){
	.pager .pagination {
	margin: 0 0 3em;
	padding:  0 0 3em;
		font-size: 1.2rem;
	}
	.pager .pagination li {
	width: 35px;
	height: 50px;
	}
	.pager .pagination li.pre a span ,
	.pager .pagination li.next a span{
			border: 1px solid #e7e7e7;
			font-size: 100%;
	}
	}


/* コラムページ - 導入例------------------------------------------------ */
.related-list li{
	float: left;
	margin: 0 28px 0 0;
	width: 170px;
	height: 185px;
}

.related-list .image{
	display: flex;
	height: 114px;
	margin-bottom: 15px;
	align-items: center;
	justify-content: center;
}

@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;
}
}

.recommend-list .date{
	float: left;
	display: inline-block;
	background: #000;
	padding: .9em 1.3em;
	color: #FFF;
}

.recommend-list p{
	overflow: hidden;
	padding-left: 1.2em;
}


/* =====================================================================
	 Sample Applications
   ===================================================================== */

#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;
	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: 0;
	background-image: url(../images/bg_play.png);
	background-size: contain;
}


.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 Us入り口ページ
===================================================================== */
.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;
	}
	}


/*Contact Us入り口ページ - 線付き囲み-------------------------------*/

.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%;
	line-height: 1.2;/**/
}
.f-link-wrap > li a{
	padding-top: 7px;
}
.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;
}
	@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;
	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下 Contact UsDLボタンエリア
   ===================================================================== */

/* FOOTER下ボタンエリア spのみ----------------------------------　*/
.bottom-panel {
	display: none;
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 0;
	border: 1px solid #e7e7e7;
}

.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;
}
.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;
}

@media screen and (min-width: 560px) {
.bottom-panel {
	display: none !important;
	position: relative;
}
}

/* 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 .dl a,
.bottom-panel-pc .contact a{
	display: block;
	width: 230px;
	background-color: #f6f6f6;
	background-repeat: no-repeat;
	background-position: 10px center;
	color: #de0a20;
	text-align: center;
	text-decoration: none;
}

.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;
}
.p-top_list-n .link:before,
.p-top_list-n .link-b:before,
.p-top_list-n .link-list li > a:before{
	top: 9px;
	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;
		}
	}

/* inquiry papge */

.iq-icon-window:after {
	display: inline-block;
	content: "";
	width: 15px;
	height: 15px;
	vertical-align: middle;
	background-image: url(../images/icon-window_w2.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-left: 15px;
}


/*  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-business li {
	display: inline-block;
	margin-right: 2em;
}
.pagenav-business li a {
	position: relative;
	padding-left: 1em;
}
.pagenav-business 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;
}
	@media screen and (max-width: 959px) {
	th, td {
		padding: 7px 10px;
		vertical-align: middle;
		font-size: 1.2rem;
		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;
		}
	}

/* 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;
	/* color: #fff; */
}
.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%;
}

/* 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: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;
}

/*yoshio*/
.list-sep li {
	line-height: 1.5em;
	padding-left: 1em;
}
/*//yoshio*/

.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;
}

/*yoshio*/
.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;
}
/*//yoshio*/


/* 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,#osaka,#honbu,#fukuoka,#g-usa,#g-mx,#g-deu,#g-shang,#g-shen,#g-taiwan,#g-japan{
	margin-top: -180px;
	padding-top: 180px;
}
    @media screen and (max-width:560px){
    #nagoya,#osaka,#honbu,#fukuoka,#g-usa,#g-usa,#g-mx,#g-deu,#g-shang,#g-shen,#g-taiwan,#g-japan{
        margin-top: -56px;
        padding-top: 56px;
    }
    }

#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;
    }
    }



/* タイトル---------------------------------------------------*/
.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;
}

/*Product Lineup------------------------------------------------------*/
.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;
}
.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;*/
}


/* 横長table --------------------------------------------------------------*/
.lg-tb{
}

.lg-tb tr td{
	padding: 5 0;
	line-height: 1.2;
	/* font-size: 0.8em; */
	width: 10%;
}

/* .lg-tb tr td:first-child{
	vertical-align: middle;
	width: 7%;
} */



/* =====================================================================
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;
	}
}


/* ===================================================================== 
Servo Presses
   =====================================================================  */
/*Servo Pressesの特長 - 用途例 表-------------------------------------------------*/

.ptop_caseimg-tit{
	text-align: center;
	padding-bottom: 1em;
}
    @media screen and (max-width:560px){
        .ptop_caseimg-tit{
            /* text-align: left;
            padding-left: 2em; */
        }
    }
.ptop_caseimg-tit span{
	color: #060B4B;
	font-size: 2rem;
	font-weight: bold; 
}
.ptop_caseimg_box ul{
	display: flex;
	flex-wrap: wrap;
	padding: 0 10%;
}

.ptop_caseimg_boxin li{
	margin-left: 1.5em;
	margin-bottom: 1em
}


/*Servo Pressesの特長 - item------------------------------------------*/
.ptop_caseimg_boxin li .titem-text01{
	position: absolute;
	text-decoration:none;
	color:#fff;
	/* padding-left: 3em; */
	padding-left: 1em;
	font-size: 78%;
}
.ptop_caseimg_boxin li .titem-text02{
	position: absolute;
	text-decoration:none;
	color:#fff;
	padding-left: 1.6em;
	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: 2.1em;
	font-size: 78%;
}



/* press top table---------------------------------------------------*/
.ptop-tb tr td{
	padding: 5 0;
	line-height: 1.2;
	font-size: 0.8em;
	vertical-align: middle;
	width: 15%;
}
.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;
	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;
}



/* ===================================================================== 
Desktop Robots
   =====================================================================  */
.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; 
}

/*Desktop Robots - 用途例-----------------------------------------------*/
.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's Robots---------------------------------------------*/
.robot-j-ft{
    display: block;
    padding-left:5vw;
}
    @media screen and (max-width:560px){
    .robot-j-ft{
    padding-left:0;
		text-align: center;
		padding-bottom: 1em;
    }
    }

.jrobot-f-stit{
    color: #cc0606;
    background-color: #f6f6f6;
    padding: 0 30px;
    margin-right:3vw;
    text-align: center;
}

.robot-j-ft iframe{
    padding: 0 5px 0 0;
    width: 360px;
    height:240px;
} 
    @media screen and (max-width:560px){
    .robot-j-ft iframe{
    padding: 0;
	width: 100%;
    }
    }

.robot-j-ft a{
    padding-left:7vw;
}
    @media screen and (max-width:560px){
	.robot-j-ft a{
		padding-left:0;
	}
	}

.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-bottom: 3em;
		}
	}

.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;
}

/* for long text  */
.robot-j-tp-nm-lt{
    width: 100%;
    background-color: #3bc3ec;
    color: #fff;
    margin-bottom: 1em;
	 /* line-height: 1;*/
	 padding: 2px 0; 
	 font-size: 0.9em;
}

/*Desktop Robots features - tile----------------------------------------------------*/
.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;
}


/*Desktop Robots - Lineup----------------------------------------------------*/
.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: rgb(250, 250, 250);
	}
	}
	@media screen and (max-width:630px){
	.rtop_lineup a {
		width: 100%;
		background-color: rgb(250, 250, 250);
	}
	}

.rtop_lineup a:hover {
	cursor: pointer;
	background-color: #fff;
}

.lineup-pname-s{
	line-height: 1.1;

}

.filter_groups{
	margin-bottom: 50px;
}
@media screen and (max-width:630px){
.filter_groups{
	margin-bottom: 20px;
}
}


 







/* ===================================================================== 
each product TOP 
=====================================================================  */
/* 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%; */
	width: 40%;
	position: relative;
}
.tabmenu-srtop > li > a {
	position: relative;
	border-top: 2px solid #f6f6f6;
	background: #f6f6f6;
	line-height: 58px;
}
.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;
	} */
	}

/* ===================================================================== 
インプリンタ TOP
=====================================================================  */
/*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;
}



/* ======================================================================
産機案内
====================================================================== */
.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);
}


/*産機案内 - History---------------------------------------------------------*/
.history-yeartit{
	font-style: italic;
	font-size: 3rem; 
}
.history-yeartit span{
	font-size:2rem;
}

.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%;
}
}


/*産機案内 - Domestic Sales Network--------------------------------------------------*/
.bsn-officebox{
		display:block;
		width: 100%;
}

.bsn-officetbl td:first-child{
    width:20%;
}


/* ======================================================
After Sales Service
   ======================================================*/
/* ページ内NEWS枠 -----------------------*/
.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;
}

/* プレスRobots -----------------------*/
.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;
}


/* ======================================================
Speciality Specification
   ======================================================*/

.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 10px 5px;
	text-align: center;
	line-height: 1.5;
}
.sspec-sbox div p{
	line-height: 1.5;
}
.sspec-sbox div p span{
	display: block;
	margin-bottom: 0.5em;
}
	@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 p.sspec-extxt{
	font-size: 0.5em;
}
	@media screen and (max-width:560px){
	.sspec-sbox p.sspec-extxt{
	font-size: 1em;
	}
	}



.sspec-sbox span.sspec-stit{
	font-weight: bold;
	border-bottom: 1px solid rgb(134, 134, 134);
}


.sspec-sbox img{
	padding: 10px 0;
	 width: 190px;
}


/* ======================================================
NEWSページ
   ======================================================*/

.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%;
	}
	}



/* ======================================================
Site Map
   ======================================================*/
.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%;
	padding-right: 5px;
}
	@media screen and (max-width:768px){
	.stmap-sbox{
		width: 100%;
		margin-bottom: 2em;
	}
	}

.stmap-link li{
	/* line-height: 1.8; */
	line-height: 1.5;
	padding: 5px 0;
}

.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;
}
}

/* screw feeders ------------------------------------------------*/

.pf-linkbtn{
    background-color: #de0a20;
    padding: 5px 10px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9em;
	 color: #fff;
}
	@media screen and (max-width: 631px) {
	.pf-linkbtn{
    background-color: #de0a20;
		padding: 5px 10px;
		border-radius: 20px;
		text-decoration: none;
		font-size: 0.9em;
		display: block;
		text-align: center;
	}
	}

.pf-linkbtn:hover{
	background: #F98688;
	text-decoration: none;
}

.pf-linkbtn:nth-child(n+1){
    margin-right:1em;
}
	@media screen and (max-width: 631px) {
	.pf-linkbtn:nth-child(n+1){
		margin-top:1em;
	}
	}

/* =====================================================================
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: 4vw;
}

/* 販売終了ページ================================================= */
@media screen and (min-width:1000px){
.endbd-btm{
	border-bottom: 1px #E8E8E8 solid;
}
}