/*
 Theme Name:  Twenty Seventeen Child
 Template:    twentyseventeen
*/

@font-face {
      font-family: 'Noto Sans JP';
      font-style: normal;
      font-weight: 400;
      src: local("Noto Sans CJK JP Regular"),
           url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
           url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
           url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
   }
* { 
	box-sizing: border-box;
}
.grecaptcha-badge {
	visibility: hidden;
}
ul,ol,li,h1,h2,h3,h4,form,p,dl,dt,dd,ol,ul,li { 
	padding: 0;
	margin: 0;
	list-style: none;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	font-size: 16px;
	line-height: 1.6em;
	font-weight: 500;
	letter-spacing: .06em;
	color: #564E4B;
	overflow-x: hidden;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" !important;
}
a {
	color: #F87E15;
	text-decoration: none;
	position: relative;
	transition: .2s;
}
a:hover {
	color: #F8A115;
}
img {
	width:100%;
	height: auto;
	vertical-align: bottom;
}
video {
    height: auto;
    max-width: unset;
}
p {
	font-size: .875em;
	line-height: 2em;
	letter-spacing: .04em;
	text-align: justify;
	padding: 0 0 1em 0;
}
.clearfix:after,
.cart_list ul li:after{
    content: "";
    display: table;
    clear: both;
}
a[name] {
	padding-top:100px;
	margin-top:-100px;
	display:block;
	height:0;
}
.entry-content a,
.entry-summary a,
.widget a,
.site-footer .widget-area a,
.posts-navigation a,
.widget_authors a strong,
.entry-title a,
.entry-meta a,
.page-links a,
.page-links a .page-number,
.entry-footer a,
.entry-footer .cat-links a,
.entry-footer .tags-links a,
.edit-link a,
.post-navigation a,
.logged-in-as a,
.comment-navigation a,
.comment-metadata a,
.comment-metadata a.comment-edit-link,
.comment-reply-link,
a .nav-title,
.pagination a,
.comments-pagination a,
.site-info a,
.widget .widget-title a,
.widget ul li a,
.site-footer .widget-area ul li a,
.site-footer .widget-area ul li a
 { 
	text-decoration:none !important;
	-webkit-box-shadow:none important;
	box-shadow:none important;
}
.entry-content a:focus,
.entry-content a:hover,
.entry-summary a:focus,
.entry-summary a:hover,
.widget a:focus,
.widget a:hover,
.site-footer .widget-area a:focus,
.site-footer .widget-area a:hover,
.posts-navigation a:focus,
.posts-navigation a:hover,
.comment-metadata a:focus,
.comment-metadata a:hover,
.comment-metadata a.comment-edit-link:focus,
.comment-metadata a.comment-edit-link:hover,
.comment-reply-link:focus,
.comment-reply-link:hover,
.widget_authors a:focus strong,
.widget_authors a:hover strong,
.entry-title a:focus,
.entry-title a:hover,
.entry-meta a:focus,
.entry-meta a:hover,
.page-links a:focus .page-number,
.page-links a:hover .page-number,
.entry-footer a:focus,
.entry-footer a:hover,
.entry-footer .cat-links a:focus,
.entry-footer .cat-links a:hover,
.entry-footer .tags-links a:focus,
.entry-footer .tags-links a:hover,
.post-navigation a:focus,
.post-navigation a:hover,
.pagination a:not(.prev):not(.next):focus,
.pagination a:not(.prev):not(.next):hover,
.comments-pagination a:not(.prev):not(.next):focus,
.comments-pagination a:not(.prev):not(.next):hover,
.logged-in-as a:focus,
.logged-in-as a:hover,
a:focus .nav-title,
a:hover .nav-title,
.edit-link a:focus,
.edit-link a:hover,
.site-info a:focus,
.site-info a:hover,
.widget .widget-title a:focus,
.widget .widget-title a:hover,
.widget ul li a:focus,
.widget ul li a:hover {
	color: #333;
	-webkit-box-shadow:unset;
	box-shadow:unset;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
    color: #666;
    background: #fff;
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
    border: 1px solid #bbb;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    display: block;
    padding: 0.7em;
    width: 100%;
	    font-size: 1rem;
    line-height: 1.5;
}
input::placeholder,
textarea::placeholder{
 	color: #aaa;
}
li > ul, li > ol {
    margin-bottom: 0;
    margin-left: 1.5em;
}
table {
    border-collapse: collapse;
    margin: 0 0 1.5em;
    width: 100%;
}
.page_contact .wpcf7-form p { padding-bottom:1em !important;}
.page_contact .wpcf7-form p:last-child { padding-bottom:0 !important;}
div.wpcf7-response-output {  
	margin: -10px 0 30px !important;
   text-align: center;
   padding: 20px; }
.btn {
	display:block;
	background-color: #F87E15;
	color: #fff;
	font-size: .875em;
	padding: 15px;
	text-align: center;
	margin: 20px auto;
	border-radius: 5px;
	transition: .2s;
}
.btn:hover,
.wpcf7-submit:hover{
	color: #fff !important;
	background-color:#F8A115 !important;
}
.btn2 {
	display:block;
	width: 60%;
	background-color: #F87E15;
	background-image:url(/images/alw_w10.png);
	background-repeat: no-repeat;
	background-position: 90% 50%;
	color: #fff;
	font-size: .875em;
	padding: 8px;
	text-align: center;
	margin: 0 auto;
	border-radius: 30px;
	transition: .2s;
}
.btn2:hover {
	color: #fff !important;
	background-color:#F8A115 !important;
	background-position: 92% 50%;
}
.btn_center {
	padding: 20px;
	width:50%;
	margin: 30px auto;
	font-size: 1em;
	font-weight: 700;
}
.btn_center_light {
	padding: 20px;
	width:50%;
	margin: 40px auto 0 !important;
	font-size: 1em;
	font-weight: 400;
}
.btn_left {
	padding: 20px;
	width:50%;
	margin:20px 0;
	font-size: 1em;
	font-weight: 700;
}
.wpcf7-submit,
.wpcf7-confirm{
	width:100%;
	background-color: #F87E15 !important;
	color: #fff;
	font-size: 1.2em !important;
	padding: 30px 0 !important;
	text-align: center;
	margin:0 auto;
	letter-spacing:.5em !important;
	border-radius: 5px;
	transition: .2s;
}
.wpcf7-back {
	margin: 0 auto 20px;
   width: 20%;
}
.bg_graygrid {
	background-image: url(/images/bg_gray.gif);
}
.bg_graygrid2 {
	background-image: url(/images/bg_gray2.gif);
}
.bg_bluegrid {
	background-image: url(/images/bg_blue.gif;)
}
.bg_whitegrid {
	background-image: url(/images/bg_base.gif)
}
.bg_gray { background-color: #F6F4F4;}

.blue {color:#50B0E3;}
.navy {color: #065793;}
.orange {color: #F87E15;}
.sky { color: #50B0E3;}

.fs_s { font-size:.76em;}
.fs_l { font-size:1.2em;}
.fs_ll { font-size: 1.4em;}
.bold { font-weight: 700;}

.h_en {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .06em;
	display: inline-block;
}
.wrapper {
	width:96%;
	max-width:62.75em;
	margin: 0 auto;
}
.ful-width_wrapper {
	width:100%;
	overflow-x: hidden;
}
.pd50 { padding: 50px;}
.mg50 { margin: 0 auto;}
.pd50tb { padding: 50px 0;}
.pd80tb { padding: 80px 0;}
.mg50tb { margin: 50px 0;}
.pdt50 { padding-top: 50px;}
.pdb20 {padding-bottom: 20px;}
.pdb50 {padding-bottom: 50px;}
.pdb100 { padding-bottom: 100px;}
.mgt20 { margin-top: 20px;}
.mgt40 { margin-top: 40px;}

.br {
	display: block;
	padding-bottom: .4em;
}
.br-in {
	display: inline-block;
}
.section_head {
	font-size: 1.6em;
	padding: 0 0 50px;
	position: relative !important;
}
.page_head::before {
    content: '';
    display: block;
    width: 50px;
    height: 3px;
    background: #F87E15;
    position: absolute;
    top: .6em;
    left: -70px;
}
.section_head::before {
    content: '';
    display: block;
    width: 50px;
    height: 3px;
    background: #F87E15;
    position: absolute;
    top: .5em !important;
    left: -70px;
}
tr {
    border-bottom: 1px solid #065793;
}
.nav-subtitle { display:none;}
.post-navigation .nav-previous,
.post-navigation .nav-next {
    float: none;
    width: 100%;
	 padding:10px 0;
	text-align:center;
}
.post-navigation .nav-next {
    border-top:1px dashed #ccc;
}
.pagination, 
.comments-pagination {
     border-top: 0;
}
.wp-pagenavi {
    clear: both;
    padding-top: 30px;
    padding-bottom: 50px;
    text-align: center;
}
.wp-pagenavi a, 
.wp-pagenavi span {
    text-decoration: none;
    background: #fff;
    border: 0;
    padding: 10px 10px;
    margin: 2px;
    color: #50B0E3;
    font-size: .87em;
	
}
.wp-pagenavi span.current {
    font-weight: bold;
    background: #50B0E3;
    color: #fff;
	border:1px solid #50B0E3;
}
.sr,
.sr-seq { visibility: hidden; }
.notfound { 
	text-align:center;
	font-size:1.2em;
	padding:100px 0 50px;
	color:#666;
}
.notfound+a {
	width:80%;
	max-width:300px;
	margin-bottom:100px
}

@media screen and (max-width:64em) { 
/**************************************/
.h_en {
    padding-left: 40px;
}
	h1.page_head + .h_en {
		padding-left: 10px;
	}
}
@media screen and (max-width:48em) { 
/**************************************/
.pdb100 {
    padding-bottom: 50px;
}
}
@media screen and (max-width:26em) { 
/**************************************/
.pdt50 {
    padding-top: 25px;
}
.pd50tb {
    padding: 25px 0;
}
.h_en {
    padding-left: 32px;
    line-height: 1em;
}
.pd80tb {
    padding: 40px 0;
}
.history_factory {
    width: 100%;
    padding-top: 60%;
    background-size: cover;
    background-position: right;
    margin: -200px auto 0;
}
.factory_img {
    display: none;
}
.certification {
    padding-left: 5%;
    padding-right: 5%;
}
.certification h2 {
    font-size: 1em;
}
.certification ul {
    margin-top: 10px !important;
    padding-right: 0 !important;
    float: none !important;
    border-right: 0 !important;
}
	.certification_img {
    float: none;
    margin-top: 30px;
    padding: 0;
    margin: 20px auto 0;
    width: 80%;
    text-align: center;
}
.notfound { 
	font-size:.875em;
	padding:50px 0;
}
.notfound+a {
	margin-bottom:50px
}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

header

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

header {
	display: block;
	background: #FFF;
	border-top:5px solid #065793;
	padding: 30px 0 0;
	margin: 0;
	height: 172px;
}
header a {
	color: #065793;
}
.header_wrapper,
.footer_wrapper{
	width:96%;
	max-width: 68em;
	margin: 0 auto;
}
.header_wrapper .title {
	float: left;
	width:28%;
}
.header_wrapper nav {
	float: right;
	width:72%;
	padding-left: 2%;
}

.header_wrapper .title .discription {
	font-size: .6em;
	letter-spacing: .04em;
	color: #065793;
	padding: 0 0 15px 0;
	text-align: center;
	font-weight: 700;
	line-height: 1em;
}
.title_en {
	font-size: .5em;
	letter-spacing: .3em;
	color: #065793;
	padding: 5px 0 0 2em;
	text-align: center;
	font-weight: 700;
}
.header_wrapper nav ul{
	text-align: right;
}
.header_wrapper nav ul li{
	display: inline-block;
	padding: 0 20px;
	border-right: 1px solid #D3D3D3;
	font-size: .875em;
	font-weight: 700;
	line-height: 1.2em;
	text-align: center;
}
.header_wrapper nav ul li:last-child {
	border-right: 0;
}
.header_wrapper nav ul li span{
	display: block;
	font-size: .4em;
	color: #bfbfbf;
	letter-spacing: 0.1em;
	font-weight: 700;
	text-align: center;
	padding-top: 16px;
}
.header_wrapper nav .contact_tel { 
	text-align: right;
	padding:10px 20px 0 0;
	
}
.header_wrapper nav .contact_tel div {
	display: inline-block;
}
.header_wrapper nav .contact_tel div:first-child {
	color: #065793;
	font-size: .875em;
	font-weight: 700;
	padding-right: 2em;
}
.header_wrapper nav .contact_tel div:nth-child(2) {
	color: #564E4B;
	font-size: .76em;
	letter-spacing: .2em;
	padding-right: 1em;
	text-align: right;
}
.header_wrapper nav .contact_tel address {
	display: inline-block;
	color: #F87E15;
	font-size: 1.2em;
	letter-spacing: .2em;
	font-weight: 700;
	font-style: normal;
	text-align: right;
}
address {
    margin: 10px;
}
.headerinfo {
 background: #f5f5f5;
}
.headerinfo ul {
 position: relative;
 width: 96%;
 max-width: 68em;
 margin: 0 auto;
 padding: 3px 0;
 overflow: hidden;
}
.headerinfo ul li {
 display: block;
 font-size: .875em;
 padding:0;
 animation-duration: 1s;
 animation-name: slidein;
 animation-timing-function:ease;
}
@keyframes slidein {
  0% {
 transform:translateY(-100%);
  }
   100% {
 transform:translateY(0);
 }
}
 .headerinfo ul li a {text-decoration: underline;}
 .headerinfo ul li a span.hdate {
  display: inline-block;
  background:#F87E15;
  padding: 3px 6px;
  border-radius: 3px;
  line-height: 1em;
  color:#fff;
  margin-right: 10px;
  font-size: .76em;
 }

@media screen and (max-width:64em) { 
/**************************************/
.header_wrapper .title {
    width: 30%;
}
.header_wrapper nav {
    width: 70%;
}
}
@media screen and (max-width:65em) { 
/**************************************/
	.header_wrapper .title {
    width: 35%;
}
	.header_wrapper nav {
   display:none;
}
}
@media screen and (max-width:48em) { 
/**************************************/
.header_wrapper .title {
    width: 40%;
}
}
@media screen and (max-width:26em) { 
/**************************************/
header { padding: 15px 0 0; height:auto;}
.header_wrapper .title { width: calc(80% - 70px); }
.header_wrapper .title .discription { display:none;}
.header_wrapper .title .discription span { display:block;}
.title_en {
    padding: 0 0 0 2em;
    line-height: 1.5em;
}
.header_wrapper, .footer_wrapper {
    margin: 0 auto 10px;
}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

footer

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

footer {
	margin:0;
	padding:50px 0 0;
	background: url(/images/bg_blue2.gif) #065793;
	color:#fff;
}
.footer_content h1,
.footer_link h1{ 
	font-size:.875em; 
	font-weight: 400 !important;
    color: #fff;
    padding: 0 0 20px 0;
    margin-bottom: 30px;
    border-bottom: 1px solid #fff;
}
.footer_content{
	width:32.3%;
	float: left;
	padding-bottom: 25px;
	margin-right:2%
}
.footer_link{
	width:32.3%;
	float: left;
	padding-bottom: 25px;
}
.footer_title {
	width: 25.3%;
	float: right;
}
.footer_content ul li,
.footer_link ul li{
	display: block;
	padding: 0 0 10px 0;
	font-size: .875em;
}
.footer_content ul li a::before,
.footer_link ul li a::before{
	content:'';
	display: inline-block;
	width:5px;
	height:5px;
	border-top: 2px solid #fff;
   border-right: 2px solid #fff;
   margin-right: .5em;
   transform: translateY(-.2em) rotate(45deg);
	transition:.2s;
}
.footer_content ul li a:hover::before,
.footer_link ul li a:hover::before{
	border-color: #F8A115 !important;
	margin-right:.8em;
}
.footer_content ul li a,
.footer_link ul li a{
	color: #fff;
}
.footer_content ul li a:hover,
.footer_link ul li a:hover{
	color: #F8A115 !important;
}
.footer_content ul li ul {
	padding: .5em 0 0 0;
}
.footer_content ul li ul li{
	display: inline-block;
	width:100%;
	font-size: .875em;
	padding: 4px 0;
}
.footer_content ul li ul li::before{
	content:none;
}
.footer_title .title_en {
	color: #fff;
}
.footer_title adress dl {
	display: block;
	padding: .5em 0;
	margin: 0;
	border-bottom: 1px solid #fff;
}
.footer_title adress dl:first-child {
	border-top: 1px solid #fff;
}
.footer_title adress dl dt {
	display:block;
	float: left;
	font-size: .76em;
}
.footer_title adress dl dd {
	display: block;
	float: right;
	text-align: right;
	font-size: 1em;
	font-weight: 700;
}
.copyright {
	width: 100%;
	background-color: #D3D3D3;
	padding: 20px 0;
}
.copyright .copyright_content {
	font-size: .76em;
	color: #333;
}

@media screen and (max-width:60em) { 
/**************************************/
.footer_content ul li ul {
    padding: .5em 0 0 0;
}
.footer_content ul li ul li {
    width: auto;
}
}
@media screen and (max-width:48em) { 
/**************************************/
	.footer_wrapper { width:96%;}
	.footer_content { width:49%;}
	.footer_title { width: 50%; padding: 0 5% 40px; float:none; margin: 0 0 0 50%;}
	.footer_link{width:49%;}
	
}
@media screen and (max-width:26em) { 
/**************************************/
.footer_content,
.footer_link,
.footer_title { width: 100%; padding: 0 5% 20px; float:none;}
.footer_title { padding:20px 5% 50px; margin: 0;}
.footer_title h1{ width:70%; margin: 0 auto 5px;}
.copyright .copyright_content {text-align: center;}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

top

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.mov_area {
	width: 100%;
	height: calc(100vh - 179px);
	position: relative;
	overflow: hidden;
}
.mov_area h1 {
	display: block;
	position: absolute;
	top:50%;
	left:50%;
	z-index: 100;
	transform: translate(-50%,-50%);
	color:#fff;
	font-size: 2em;
	font-weight: 700;
}
.mov_area .mov {
	position: relative;
	top:0;
	left:0;
	width:100%;
	height: 100%;
}
.mov_area .mov .fill {
	position: absolute;
	top:0;
	left:0;
	z-index: 99;
	width:100%;
	height: 100%;
	background: rgba(0,0,0,.1);
}
.mov_area .mov video {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
	 z-index:1;
    transform: translate(-50%,-50%);
}
.mov_area .mov .mb_top {
	display:none;
    min-width: 100%;
    min-height: 100%;
	background:url(/images/top_mb.jpg);
	background-size:cover;
	background-position:center;
    width: 100%;
    height: 100%;
    position: absolute;
}
.about {
	padding: 50px;
}
.minheader {
	text-align: center;
	padding: 0 0 10px 0;
	display: block;
}

#top .about h1 {
	display: block;
	text-align: center;
	font-size: 1.6em;
	position: relative;
}
#top .about h1::after {
	content: '';
	display: block;
	width: 120px;
	height: 4px;
	background: #F87E15;
	position: absolute;
	bottom:-10px;
	left: 50%;
	transform: translateX(-50%);
}
#top .about h1 span{
	display: block;
	padding-bottom: .4em;
}
.about_content dl {
	display: inline-block;
	width:24.5%;
	padding:100px 1em 0;
	position: relative;
}
.about_content dl.bunsan::before {
	content:'';
	display: block;
	background:url(/images/icon_bunsan.png) no-repeat;
	background-size:contain;
	width:92px;
	height: 92px;
	position: absolute;
	top:0;
	left: 50%;
	transform: translateX(-50%);
}
.about_content dl.kongo::before {
	content:'';
	display: block;
	background:url(/images/icon_kongo.png) no-repeat;
	background-size:contain;
	width:92px;
	height: 92px;
	position: absolute;
	top:0;
	left: 50%;
	transform: translateX(-50%);
}
.about_content dl.youkai::before {
	content:'';
	display: block;
	background:url(/images/icon_youkai.png) no-repeat;
	background-size:contain;
	width:101px;
	height: 84px;
	position: absolute;
	top:0;
	left: 50%;
	transform: translateX(-50%);
}
.about_content dl.juten::before {
	content:'';
	display: block;
	background:url(/images/icon_juten.png) no-repeat;
	background-size:contain;
	width:151px;
	height: 73px;
	position: absolute;
	top:0;
	left: 50%;
	transform: translateX(-50%);
}
.about_content { padding-top: 50px;}
.about_content dl dt {
	display: block;
	background-color: #065793;
	width: 91px;
	height: 91px;
	margin: 10px auto 0;
	border-radius: 47px;
	color:#fff;
	text-align: center;
	padding: 36px 0;
}
.about_content dl dd {
	font-size: .875em;
	color: #444;
	text-align: justify;
	line-height: 1.6em;
	padding: 1em .5em 0;
	margin: 0;
}
.information dl {
	display: block;
	border: 1px solid #E0DCDA;
	padding: 30px 0;
	margin-bottom: 20px;
}
.information dl:last-child {
	margin-bottom: 0;
}
.information dt{
	display: block;
	float: left;
	width: 15%;
	padding: 0;
	text-align: center;
	font-size: .76em;
	letter-spacing: .1em
}
.information dd{
	display: block;
	float: left;
	width: 85%;
	padding: 0 40px 0 20px;
	border-left: 1px solid #E0DCDA;
	font-size: 1em;
	text-align: justify;
}
.information dd h2 {
	font-size:1em;
	font-weight: 700;
	padding-bottom: 10px;
}
.information dd p {
	 line-height: 1.6em;
	padding-bottom: 0;
}
.service ul{
	display: block;
	position: relative;
}
.service ul::after {
	content:'';
	display: block;
	background: url(/images/bg_blue.gif);
	width: 300%;
	height: 520px;
	position: absolute;
	top:80px;
	right: -210%;
	z-index: -1;
}
.service ul li,
.contentlist ul li{
	display: block;
	float: left;
	background: #fff;
	width: 32%;
	margin-right: 2%;
	box-shadow: 6px 10px 8px 4px rgba(0,0,0,.06);
	transition: .5s;
}
.service ul li:hover,
.contentlist ul li:hover{
	transform: scale(1.02);
	box-shadow: 16px 20px 15px 4px rgba(0,0,0,.04);
}
.service ul li:last-child,
.contentlist ul li:last-child {
	margin-right: 0;
}
.service ul li a,
.contentlist ul li a{
	display: block;
	color: #564E4B !important;
	cursor: pointer;
}
.service ul li .service_content {
	padding: 40px 40px 30px;
}
.service_img {background:#ccc;}
.service ul li .service_content h2 {
	font-size: 1em;
	padding: 0 0 20px;
	text-align: center;
}
.service ul li .service_content p,
.products .products_header .header_content p{
	font-size: .875em;
	text-align: justify;
	line-height: 1.8em;
}
.products .products_header{ position: relative;}
.products .products_header::after {
	content:'';
	display:none;
	background: url(/images/bg_gray.gif);
	background-position: -20px -20px;
	width: 75%;
	height: 500px;
	position: absolute;
	top:80px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -10;
	opacity: .5;
}
.products .products_header .header_content{
	float: left;
	width: 45%;
	padding: 80px 30px 0 0;
}
.products .products_header .header_content .br {
	padding-bottom:0 !important;
	line-height: 1.1em;
}
.products .products_header .header_content h2{
	font-size: 2.6em;
	padding-bottom: 30px;
}
.products .products_header .header_img{
	float: right;
	width: 55%;
	padding:0;
}
.products ul.slider {
	display: block;
	overflow-x: scroll;
	white-space: nowrap;
}
.products ul.slider li {
	display: inline-block;
	overflow: hidden;
	position: relative;
	padding:0 .05%;
	margin:0;
	white-space: normal;
}
.products ul.slider li a {
	display: block;
	background-color: #50B0E3;
	padding:50px 40px 40px;
	margin:0;
	position: relative;
	z-index: 0;
	transition: .2s;
	cursor: pointer;
}
.products ul.slider li a.cat_mokko{
	background-image: url(/images/product_img_neo.png);
	background-size: 60%;
	background-position: 130% 120%;
	background-repeat: no-repeat;
}
.products ul.slider li a.cat_fukyu{
	background-image: url(/images/product_img2.png);
	background-size: 60%;
	background-position: 130% 120%;
	background-repeat: no-repeat;
}
.products ul.slider li a.cat_syufuku{
	background-image: url(/images/product_img3.png);
	background-size: 60%;
	background-position: 130% 120%;
	background-repeat: no-repeat;
}
.products ul.slider li a.cat_kyoka{
	background-image: url(/images/product_img4.png);
	background-size: 60%;
	background-position: 130% 120%;
	background-repeat: no-repeat;
}
.products ul.slider li a.cat_uv{
	background-image: url(/images/product_img5.png);
	background-size: 58%;
	background-position: 120% 95%;
	background-repeat: no-repeat;
}
.products ul.slider li a .no{
	position: absolute;
	top:20px;
	left:-10px;
	z-index: -1;
	color:rgba(255,255,255,.22);
	font-size: 80px;
	font-weight: 800;
}
.products ul.slider li a .cat-name{
	position: relative;
	color:#fff;
	font-size: 1.4em;
	font-weight:700;
	padding-bottom: 40px;
}
.products ul.slider li a p {
	font-size: .875em;
	text-align: justify;
	width:50%;
	min-height: 9em;
	color:#fff;
}
.listbtn {
	width:30%;
	margin: 50px auto;
	text-align: center;
	font-size: 1em;}

.contentlist {
	background: url(/images/bg_top_menu.jpg);
	background-size: cover;
}
.contentlist ul li .content_title {
	padding: 20px;
	text-align: center;
	line-height: 1.2em;
}
.contentlist ul li .content_title h2 {
	font-size: 1em;
	padding: 0;
	text-align: center;
}
.contentlist ul li .content_title h2+div {
	font-size: .65em;
	font-weight: 800;
	color:#bfbfbf;
}
@media screen and (max-width:76em) { 
/**************************************/
.products ul.slider li a .cat-name{
	text-shadow: 1px 1px 5px rgba(0,0,0,.4);
}
.products ul.slider li a p {
	width:70%;
	text-shadow: 1px 1px 5px rgba(0,0,0,.4);
}
}
@media screen and (max-width:64em) { 
/**************************************/
.service ul::after {
    height: 500px;
	}
}
@media screen and (max-width:60em) { 
/**************************************/
.about {
    padding: 50px 0;
}
.products .products_header .header_content h2 {
    font-size: 2.2em;
    padding-bottom: 30px;
}
.products ul.slider li a p {
	width:90%;
	text-shadow: 1px 1px 5px rgba(0,0,0,.4);
}
.about_content dl {
    vertical-align: top;
}
.products ul.slider li a {
    padding: 30px 30px 20px;
    margin: 0;
}
}
@media screen and (max-width:48em) { 
/**************************************/
.about_content dl {
    width: 49.6%;
    padding: 100px 0 30px;
}
.about_content dl dt {font-size: 1.2em;}
.about_content dl dd {
    text-align: center;
    width: 80%;
	margin:0 auto;
}
.about_content dl dd span {
    display:block;
}
.service ul li .service_content h2 span{
    display:block;
}
.products .products_header .header_content {
    width: 55%;
    padding: 0px 30px 0 0;
}
.products .products_header .header_content h2 {
    font-size: 2em;
}
.products .products_header .header_img {
    width: 45%;
}
.products .products_header .header_img {
    float: right;
    width: 45%;
    padding: 0;
}
.products ul.slider li a p {
    width: 50%;
    text-shadow: none;
}
.products ul.slider li a .cat-name {
    text-shadow: none;
}
}
@media screen and (max-width:26em) { 
/**************************************/

.mov_area {
	width: 100%;
	height: 300px;
	position: relative;
	overflow: hidden;
}
.mov_area .mov video {
    display:none;
}
.mov_area .mov .mb_top { display:block;}
.about {
    padding: 25px 0;
}
#top .about h1 {
    font-size: 1.2em;
	padding: 0 5%;
}
.about h1 span {
    display: inline !important;
}
.about_content dl {
    width: 49%;
    padding: 100px 0 30px;
}
.about_content dl dd span {
    display: inline;
}
.service_content p,
.products .products_header .header_content p {
    padding-bottom: 0;
	}
.about_content dl dd {
    padding: 1em 0 0;
    text-align: left;
}
.service ul::after { display:none;}
.information dl {
    padding: 20px;
}
.information dt {
    float: none;
    width: 100%;
    padding: 0;
    text-align: left;
}
.information dd {
    display: block;
    float:none;
    width: 100%;
    padding: 5px 0 0;
    border-left: 0;
}
.information dd p::last-child { padding-bottom:0;}
.service ul li, .contentlist ul li {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
	box-shadow:3px 5px 8px 4px rgba(0,0,0,.06)
}
.service ul li .service_content {
    padding: 20px 20px 30px;
}
.products .products_header .header_content {
    width: 100%;
    padding: 0;
	}
.products .products_header .header_content h2 {
    font-size: 1.6em;
}
.products .products_header .header_img {
    float: none;
    width: 100%;
    padding: 0;
}
.products ul.slider li a .cat-name{
	font-size:1.2em;
	text-shadow: none;
}
.products ul.slider li a p {
	width:100%;
	text-shadow: none;
}
.products ul.slider li a p {
    line-height: 1.8em;
    text-shadow: none;
}
	.about_content dl dt {
	font-size: 1em;
    width: 81px;
    height: 81px;
    padding: 30px 0;
}
.about_content dl.bunsan::before {
    width: 82px;
    height: 92px;
	}
.about_content dl.juten::before {
    width: 131px;
    height: 73px;
	}
.about_content dl.kongo::before {
    width: 82px;
    height: 92px;
	}
	.about_content dl.youkai::before {
    width: 81px;
	}
.products ul.slider li a.cat_fukyu {
	background-image: url(/images/mb_product_fukyu.png);
    background-size: 100%;
    background-position: center bottom;
    padding-bottom: 100px;
}
.products ul.slider li a.cat_kyoka {
	background-image: url(/images/mb_product_kyoka.png);
    background-size: 100%;
    background-position: center bottom;
    padding-bottom: 100px;
}
.products ul.slider li a.cat_syufuku {
    background-image: url(/images/mb_product_syufuku.png);
    background-size: 100%;
    background-position:  center bottom;
    background-repeat: no-repeat;
	padding-bottom: 100px;
}
.products ul.slider li a.cat_mokko {
	background-image: url(/images/mb_product_mokko.png);
    padding-bottom: 100px;
    background-size: 100%;
    background-position: center bottom;
}
.products ul.slider li a.cat_uv {
    background-image: url(/images/mb_product_uv.png);
    background-size: 100%;
    background-position: center bottom;
    background-repeat: no-repeat;
	padding-bottom: 100px;
}
	.products ul.slider li a.cat_log {
    background-image: url(/images/mb_product_log.png);
    background-size: 100%;
    background-position: center bottom;
    background-repeat: no-repeat;
	padding-bottom: 100px;
}
.products ul.slider li a .cat-name {
    padding-bottom: 20px;
}
.listbtn {
    width: 90%;
    margin: 25px auto;
    text-align: center;
    font-size: 1em;
}
.headerimg_reruit {
    height: 200px !important;
}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

page

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.page_wrapper { padding-left: 50px !important;}
.page_head {
    font-size: 1.6em;
    padding: 0 0 20px;
    position: relative !important;
	display: inline-block;
}
.section_head{
	line-height: 1.4em;
}
.section_head::before {
	content: '';
	display: block;
	width: 30px;
	height: 3px;
	background: #F87E15;
	position: absolute;
	top:.7em;
	left: -50px;
}
#page_content { width:100%; overflow-x:hidden;}
#page_content h1 { display: inline-block;}
.t_small { font-size:.76em;}
#page_content article .pageh1 {
	display: inline-block;
	padding-left: 1em;
    transform: translateY(-.5em);
}
.headerimg_company {
	background: url(/images/company_img2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 360px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.headerimg_reruit {
	background: url(/images/recruit_headerimg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 360px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.message { margin-bottom: 0;}
.message .message_content {
	float: left;
	width: 100%;
	min-width: 500px;
}
.message .message_img {
	float: right;
	width: 30%;
	min-width: 200px;
}
.message .sign { 
	text-align: right;
	padding-top: 1em;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	margin-right: 0;
}
.table {
	position: relative;
}
.table dl {
	display: flex;
	position: relative;
}

.table dl::before {
	content:'';
	display: block;
	width:15%;
	height: 1px;
	background-color: #E0DCDA;
	position: absolute;
	bottom: 0;
	left: 0;
}
.table dl::after {
	content:'';
	display: block;
	width:84%;
	height: 1px;
	background-color: #E0DCDA;
	position: absolute;
	bottom: 0;
	right: 0;
}
.table dl dt {
	display: block;
	width: 15%;
	padding: 20px 0;
	font-size: .875em;
}
.table dl dd {
	display: block;
	width: 84%;
	padding: 20px 1%;
	font-size: .875em;
}
.history {
	margin: 30px 0 50px 0;
	position: relative;
}

.history_factory {
	width:96%;
	max-width:62.75em;
	height: 0;
	padding-top: 300px;
	background: url(/images/company_img1.jpg) no-repeat;
	background-size: cover;
	background-position: right;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}
.factory_img {
	display: block;
    background-color: #065793;
    height: 300px;
    width: 70%;
    max-width: 62.75em;
    margin: -280px 0 0 34%;
    z-index: 1;
}
.certification h2 {
	padding: 0 0 20px 0;
	margin: 0;
	font-size: 1.1em;
	font-weight: 700;
}
.certification ul { 
	margin-top: 30px;
	padding-right: 10%;
    float: left;
    border-right: 1px solid #ccc;
}
.certification ul li {
	font-size: .76em;
	font-weight: 700;
	padding: 0 0 5px 0;
}
.certification ol li { 
	font-size:.875em; 
	padding-bottom:10px;
	padding-left: 1em;
   text-indent: -2em;
	margin-left: 1em;
}
.certification p,.certification ol { padding-bottom:40px;}
.certification_img {
	float: left;
	margin-top: 30px;
	padding: 0 0 0 10%;
}
.certification_img img {
	width: 164px;
	height: auto;
}
.access adress {
	display: block;
	font-size: 1.4em;
   font-weight: 400;
	margin-bottom: 80px;
}
.access adress dl {
	display: block;
	padding: .2em 0;
	margin: 0;
}
.access adress dl dt{
	display:inline-block;
	width: 5em;
	font-size: .875em;
	font-weight: 400;
}
.access adress dl dd{
	display:inline-block;
	font-size: .875em;	
}
.access .map{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 40%;
	position: relative;
	background:#ccc;
	margin-bottom: 50px;
}
.access .gmap{
	display: block;
    width: 100%;
    height: 500px;
    position: relative;
    background: #ccc;
    margin-bottom: 50px;
    border: 5px solid #fff;
    box-shadow: 10px 15px 20px 0px rgba(0,0,0,.05);
}
.access .gmap iframe { width:100%; height:100%;}
p.access {font-size:1em;}
.acess_contact {
	display:flex;
	font-size: 1em;
}
.acess_contact dt{
	padding-right:1em;
}
.access .way {
	margin-top:40px;
}
.access .way div{
	width:48%;
	float: left;
}
.access .way div:first-child { margin-right: 4%;}
.access .way div h3 { 
	font-size: 1em;
    padding-bottom: .5em;
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
}

.headerimg_contract {
	background: url(/images/contract_headerimg.jpg) no-repeat;
	background-size: cover;
	background-position: center bottom;
	width: 100%;
	height: 360px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.contract_message {
	padding-right:55%;
	padding-bottom: 50px;
	position: relative;
}
.contract_message:before {
	content: '';
	display: block;
	width:40%;
	height:220px;
	background-image: url(/images/cotract_img0.jpg);
	background-size: cover;
	background-position: bottom;
	background-repeat: no-repeat;
	position: absolute;
	top:0;
	right: 0;
	z-index: 10;
}
.contract_message:after{
	content: '';
	display: block;
	width:33%;
	height:220px;
    background-color: #065793;
	position: absolute;
	top:30px;
	right: -30px;
	z-index: 5;
}
.page_contract h2 { 
	font-size: 1.2em;
	padding-bottom: 30px;
}
.underline span { position: relative;}
.underline span:after{
	content:'';
	display: inline-block;
	position: absolute;
	bottom:-.2em;
	left:0;
	width:100%;
	height: 10px;
	z-index: -1;
	background-color: #F3FF5D;
}
ul.border-box { 
	border: 1px solid #E0DCDA;
	padding: 30px 30px 14px 30px;
}
.bold { font-weight: 700;}
ul.border-box li { 
	padding-bottom: 16px;
	font-size: 1em;
}

ul.contract_menu {
	position: relative;
}
ul.contract_menu:after {
	content:'';
	display: block;
	width:200%;
	height: 86%;
	background: url(/images/bg_blue.gif);
	position: absolute;
	left:50%;
	top:7%;
	z-index: -1;
	transform: translateX(-50%);
}
ul.contract_menu .contract_content,
ul.contract_menu .contract_img{
	width:50%;
	position: relative;
}
ul.contract_menu .contract_m1 .contract_content {float: left;}
ul.contract_menu .contract_m1 .contract_img {float: right;}
ul.contract_menu .contract_m2 .contract_content {float:right;}
ul.contract_menu .contract_m2 .contract_img {float: left;}

.contract_box {
	width:100%;
	height: 0;
	padding-top: 80%;
	position: relative;
}
.contract_innbox {
	position: absolute;
	width: 100%;
	height: 100%;
	top:0;
	left:0;
	padding: 60px 12%;
	background-color: #F6F4F4;
}
.contract_no {
	font-size: 40px;
	font-weight: 800;
	text-align: center;
	padding-bottom: 40px;
}
.contract_content h2 {
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.6em;
	text-align: center;
	padding-bottom: 40px;
}
.contract_content p {
	font-size: .875em;
	text-align: justify;
	color: #707070;
}
.contract_img1 {
	background-image: url(/images/contract_img1.jpg);
	background-size: cover;
	background-position: center;
}
.contract_img2 {
	background-image: url(/images/contract_img2.jpg);
	background-size: cover;
	background-position: center;
}
.contract_img3 {
	background-image: url(/images/contract_img3.jpg);
	background-size: cover;
	background-position: center;
}
.contract_img4 {
	background-image: url(/images/contract_img4.jpg);
	background-size: cover;
	background-position: center;
}
.contract_img5 {
	background-image: url(/images/contract_img5.jpg);
	background-size: cover;
	background-position: center;
}
.eq_table table { 
	width: 100%;
	overflow: hidden;
}
.eq_table table { 
	min-width: 100%;
	width:auto;
	font-size: .82em;
	border-spacing: 10px;
}
.eq_table table thead tr th,
.eq_table table tbody tr td{
	display: table-cell;
	padding: 20px 5px;
	margin-right: 1.5%;
	white-space: nowrap;
	font-weight: 400;
	text-align: left;
}
.eq_table table thead tr th:last-child,
.eq_table table tbody tr td:last-child{
	margin-right: 0;
	width: 20%;
}
.eq_table table thead tr th:first-child,
.eq_table table tbody tr td:first-child{
	width: 15%;
}
.eq_table table thead tr th:nth-child(2),
.eq_table table tbody tr td:nth-child(2){
	width: 30%;
}
.eq_table table thead tr th:nth-child(3),
.eq_table table tbody tr td:nth-child(3){
	width: 5%;
	text-align: center;
}
.eq_table table thead tr th:nth-child(4),
.eq_table table tbody tr td:nth-child(4){
	width: 24%;
}
.eq_table table thead tr th {
	border-bottom: 3px solid #065793;
}
.eq_table table tbody tr td {
	border-bottom: 1px solid #D3D3D3;
}
.table_dtl::before,
.table_dtl dl::before{
	width:100%;
}
.table_dtl::after,
.table_dtl dl::after{
	width:60%;
}
.table_dtl dl dt{ width: 40%;}
.table_dtl dl dd { width:60%; padding-left: 3%;}

.eq_img { 
	padding: 100px 0 0;
	position: relative;
}
.eq_img:after {
	content:'';
	display: block;
	width:120%;
	height: 75%;
	background:#065793;
	position: absolute;
	left:50%;
	top:50px;
	z-index: -1;
	transform: translateX(-50%);
}
.w70rightside {
	margin-left:30%;
}
.telline {
	border-bottom: 1px solid #707070;
	padding: 1em 0  .5em 1em;
	display: inline-block;
}
.telline span {
	display: inline-block;
	padding: 0 1em 0 0;
}
.contract_contact { padding: 50px 0 0 0;}
.contract_contact dl dt {
	display:block;
	float:left;
	width:30%;
	padding: 10px 40px 10px 0;
	font-size: .875em;
	font-weight: 700;
	text-align: right;
}
.contract_contact dl dd {
	display:block;
	float:left;
	width:70%;
	padding: 10px 0;
}
.contract_contact .sendbtn {
	width:70%;
	margin-left:30%;
	margin-top:20px;
}

.headerimg_products {
	background: url(/images/product_header_neo.jpg) no-repeat;
	background-size: cover;
	background-position:center;
	width: 100%;
	height: 360px;
	margin-top: 20px;
	margin-bottom: 30px;
}
.product_index div.index_h {
	display: inline-block;
	padding: 20px 0 5px 0;
	border-bottom: 3px solid #F87E15;
	position:relative;
}
.product_index div.index_h_cap  {
	display:inline-block;
	padding-left:2em;
	font-size:.875em;
	color:#333;
}
.product_index ul { padding: 20px 0 0;}
.product_index ul li{
	float: left;
	display: block;
	width: 16.2%;
	height: 180px;
	position: relative;
	margin-right: .5%;
}
.product_index ul li:last-child { margin-right: 0;}
.product_index ul li div.index_content {
	width: 100%;
	padding-top: 70%;
	position: relative;
	top:0;
	left:0;
}
.product_index ul li div .inner {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	padding: 15px;
	color: #040000;
	border:1px solid #E0DCDA;
	background-color: #f6f4f4;
	border-radius: 5px;
	transition: .2s;
}
.product_index ul li div .inner:hover {
	background-color: #fff;
}
.product_index ul li div .inner .index_name{
	font-weight: 700;
	font-size: 1em;
	line-height:1.2em;
	height: 2.5em;
}
.product_index ul li div .inner ul li {
	display: block;
	font-size: .76em;
	padding-bottom:0;
	line-height: 1.4em;
	float:none;
	width: auto;
	height: auto;
	border: 0;
	margin-right: 0;
}
.index_content { position:relative;}
.index_content .kigamate_icon:after {
content: '';
    display: block;
    width: 74%;
    height: 0;
    padding-top: 60%;
    background-image: url(/images/kgtm_ace_main.png);
    background-size: contain;
	background-repeat: no-repeat;
    position: absolute;
    right: 5px;
    bottom: -40px;
    z-index: 10;
    transition: .2s;
}
.index_content .saise_icon:after {
	content: '';
    display: block;
    width: 60%;
    height: 0;
    padding-top: 50%;
    background-image: url(/images/kigatameru_tp.png);
    background-size: contain;
    position: absolute;
    right: 10px;
    bottom: -20px;
    z-index: 10;
	transition: .2s;
}
.index_content .fukyu_icon:after {
	content: '';
    display: block;
    width: 60%;
    height: 0;
    padding-top: 49%;
    background-image: url( /images/fukyu_tp.png);
    background-size: contain;
    position: absolute;
    right: 10px;
    bottom: -20px;
    z-index: 10;
	transition: .2s;
}
.index_content .other_icon:after {
	content: '';
    display: block;
    width: 70%;
    height: 0;
    padding-top: 55%;
    background-image: url( /images/other_tp.png);
    background-size: contain;
    position: absolute;
    right: 10px;
    bottom: -20px;
    z-index: 10;
	transition: .2s;
}
.index_content .uv_icon:after {
	content: '';
    display: block;
    width: 70%;
    height: 0;
    padding-top: 55%;
    background-image: url( /images/uv_tb.png);
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: -20px;
    z-index: 10;
	transition: .2s;
}
.index_content:hover .kigamate_icon:after,
.index_content:hover .saise_icon:after,
.index_content:hover .uv_icon:after,
.index_content:hover .fukyu_icon:after,
.index_content:hover .saise_icon:after,
.index_content:hover .other_icon:after{
	transform: scale(1.1);
}

.product_header {
	width:100%;
	color:#065793;
	border-radius: 30px;
	font-size: 2.2em;
	font-weight: 700;
	padding:10px 0;
	padding-top:100px !important;
	margin-bottom: 40px;
	margin-top: -60px;
}
.product_section {}
.product_section_even { float:left; width:43% !important; padding:0 !important;}
.product_section_even:first-child { margin-right:4%;}
.product_section1 .product_side,
.product_section2 .case_side{
	float: left;
	width:50%;
}
.product_section1 .case_side{
	padding-left: 8%;
}
.product_section2 .case_side{
	padding-right: 8%;
}
.product_section1 .case_side,
.product_section2 .product_side{
	float: right;
	width:50%;
}
.product_section h2{
	font-size: 1.4em;
	font-size:bold;
	color:#564E4B;
	padding: 5px 20px 5px 20px;
	margin-bottom: 30px;
	border-left: 7px solid #F87E15;
}
.product_section ul { margin-top: 30px;}
.product_section ul li {
	display: block;
	float: left;
	width:32%;
	margin-right: 2%;
	padding-bottom: 10px;
}
.product_section ul li.block2 {
	display: block;
	float: left;
	width:66% !important;
	margin-right: 2%;
	padding-bottom: 10px;
}
.product_section ul li.block2 ul,
.product_section ul li.block3 ul{ margin-top:0; margin-left:0 !important;}
.product_section ul li.block2 ul li {
    display: block;
    float: left;
    width: 48.5% !important;
    margin-right: 3%;
    padding-bottom: 0px;
}
.product_section ul li.block3 {
	display: block;
	float: left;
	width:100% !important;
	margin-right: 0 !important;
	padding-bottom: 10px;
}
.product_section ul li.block3 li { padding-bottom:0 !important;}
.product_section ul li.block3 p{ margin-bottom:0; }
.product_section ul li.margin0 { margin-right:0 !important;}
.product_section ul li:nth-child(3n) { margin-right: 0;}
.product_section h3 {
	font-size: .875em;
	line-height: 1.2em;
	height: 3em;
	padding-bottom: 10px;
	margin-top: 10px;
}
.product_section .product_type {
	display: inline-block;
	font-size: .76em;
	background: #646464;
	color:#fff;
	padding: 3px 10px;
	margin-bottom: 10px;
	line-height: 1em;
	border-radius: 5px
}
.product_section ul li p {
	font-size: .76em;
	line-height: 1.8em;

}
.product_section .btn {
	padding: 5px;
    margin: 10px auto;
}
.case_side h4 {
	font-size:.875em;
	padding: 20px 0 30px 0;
	text-align: right;
}
.pd_other_img { 
	 width: 70%;
    min-width: 250px;
    text-align: center;
    margin: 0 auto;
}
.headerimg_uv {
	background: url(/images/uv_haderimg.jpg) no-repeat;
	background-size: cover;
	background-position:center;
	width: 100%;
	height: 360px;
	margin-top: 20px;
	margin-bottom: 30px;
}

.left50 {
	position: relative;
	float: left;
	width:55%;
}
.rightimg {
	position: relative;
	float: right;
	width:40%;
}
.rightimg img {
	position: absolute;
	top:-170px;
	right:0;
}
.rightimg img::after {
	content:'';
	display: block;
	background: #065793;
	width:100%;
	height: 100%;
	position: absolute;
	top:30px;
	left:30px;
	z-index: -1;
}
	
.page_uv ul li {
	font-size: .875em;
	padding-bottom: 1em;
}
.page_uv ul.uv_use li {
	display:block;
	float: left;
	width:30%;
	text-align: center;
	margin-right: 5%;
}
.page_uv ul.uv_use li:last-child {
	margin-right: 0;
}
.page_uv ul.uv_use li span { 
	display: inline-block;
	font-weight: 700;
	padding: 10px 0;
	line-height: 1.4em;
}
.ta_r { text-align: right;}
.linebox { 
	border: 1px solid #065793;
	padding:50px 50px 30px;
	background: #fff;
 }
.policy p { padding-bottom:50px;}
.policy dl dt { 
	font-size:1.2em; 
	font-weight: 700;
	padding:0 0 15px 0;
	border-bottom: 1px solid #ccc;
}
.policy dl dd { 
	font-size:.875em; 
	padding:15px 0 50px;
	line-height:1.8em;
	text-align:justify;
}
.norec { 
 border:1px solid #ddd;
	padding:50px;
	margin:100px auto;
	width:80%;
    max-width: 62.75em;
	text-align:center;
	font-size:1em;
}
.recruit { display:none;}
.ex_info {
	  background: #fff;
    border: 1px solid #d3dede;
    padding: 10px 5%;
    border-radius: 5px;
    margin-top: 22px;
}
.ex_info h4 {
	font-size:1em;
	text-align:left;
	color:#F87E15;
}
.page_cart .ex_info {
	background: #fff9c4;
    border: 0;
    padding: 20px 5% 0px;
    border-radius: 5px;
    margin-top: 22px;
}
.page_cart .ex_info h4 {
	font-size:1em;
	margin-bottom:10px;
	color:#F87E15;
}
.page_kandei .page_head {
	font-weight: bold;
}
.page_kandei h1 {
	font-size: 2em;
    line-height: 1.6em;
    text-align: justify;
    margin: 0 0 40px;
}
.page_kandei h1 span{
	display: inline-block;
}
.page_kandei .img_main {
	margin-bottom: 40px;
}
.page_kandei .img_main span,.kandei_works li span{
	display: block;
	padding: 10px;
	text-align: center;
	font-size: .875em;
	line-height: 1.4em;
}
.page_kandei p,.page_kandei ul li {
	font-size: 1.05em;
}
.page_kandei .kandei_contact {
	padding: 0 0 0 40px;
	margin: 40px 0 80px;
	border-left: 4px solid #f87e15;
}
.page_kandei .kandei_contact p:last-child{
	margin: 0;
	padding:0;
	font-size: 1.2em;
}
.page_kandei .nakahashi {
	padding: 64px 7%;
	margin-bottom: 64px;
    border: 1px solid #eee;
}
.page_kandei h2{
	margin-bottom: 40px;
}
.page_kandei .nakahashi h2{
	margin-bottom: 8px;
}
.page_kandei .nakahashi h3{
	margin: 40px 0 24px;
}
.page_kandei .nakahashi h3 span{
	display: inline-block;
	padding: 0 0 4px 0;
	border-bottom: 4px solid #F87E15;
}
.page_kandei .nakahashi ul li{
	margin-bottom: 16px;
}
.page_kandei .nakahashi .small{
	display: block;
	font-size: .875em;
	margin-bottom: 40px;
}
.kandei_works {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.kandei_works li{
	width: 49.5%;
	margin-bottom: 8px;
}
.page_head::before {
    top: 0.4em;
}
.cart_confilm h4 {
	font-size: 1.4em;
}
.cart_confilm p.items {
	padding-left: 30%;
	font-size: 1.05em;
	line-height:1.6em;
}
.cart_confilm p {
	font-size: 1.1em;
}
.cart_confilm .sendbtn {
	display: flex;
	gap: 8px;
}
#sbmit_btn {
	background-color: #aaa !important;
}
#sbmit_btn.sbmit_on {
	background-color: #F87E15 !important;
}

@media screen and (max-width:64em) { 
/**************************************/
.section_head::before {
    left: 0;
}
.section_head {
    padding: 0 0 50px 40px;
}
.page_wrapper {
    padding-left: 0 !important;
}
.wrapper {
    width: 84%;
}
.factory_img {
	margin: -260px 0 0 30%;
    height: 280px;
}
.page_kandei h1{
	font-size: 1.6em;
}
.page_kandei h1 span{
	display: inline;
}
}
@media screen and (max-width:60em) { 
/**************************************/
.page_head {
    padding: 0 0 20px 40px;
	}
}
@media screen and (max-width:48em) { 
/**************************************/
.page_head {
    padding: 0 0 20px 40px;
	}
.section_head::before, .page_head::before {
    left: -40px;
}
.contract_no {
    font-size: 30px;
    font-weight: 800;
    text-align: center;
    padding-bottom: 20px;
}
.contract_content h2 {
    font-size: 1.1em;
    font-weight: 700;
    line-height: 1.4em;
    padding-bottom: 20px;
}
.contract_content p { line-height: 1.6em;}
.section_head::before{ left: 0px;}
.eq_table { overflow-x:auto;}
.w70rightside { margin-left: 0; }
.contract_contact dl dt {
    width: 25%;
    padding: 10px 0 10px 0;
    text-align: left;
}
.contract_contact dl dd { width: 75%;}
.contract_contact .sendbtn {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
}
.headerimg_products { background-size: 150%; }
.product_index ul li div .inner .index_name {
    font-size: .875em;
    height: 2em;
    line-height: 1.2em;
}
.message .message_content {
    width: 60%;
    min-width: 100px;
}
.page_kandei .kandei_contact {
	padding: 0 0 0 24px;
	margin: 32px 0 72px;
}
.page_kandei .kandei_contact p:last-child,.page_kandei p,.page_kandei ul li{
	font-size: 1em;
}
.page_kandei .nakahashi {
    padding: 40px 7%;
    margin-bottom: 64px;
}
}
@media screen and (max-width:26em) { 
/**************************************/
.headerimg_company {
    margin-bottom: 0;
	height: 200px;
	}
.section_head {
    padding: 0 30px 40px;
	font-size:1.2em;
}
.section_head::before {
    width: 20px;
}
.page_head {
    padding: 0 0 0 20px;
    font-size: 1.2em;
}
.section_head::before, .page_head::before {
    left: -20px;
    width: 30px;
    top: .5em;
	height:4px;
}
#page_content article .pageh1 {
    padding-left: 0;
    transform: translateY(-.4em);
}
.message {
    margin-bottom: 25px;
}
.message .message_content {
    width: 100%;
    padding: 0 5%;
    float: none;
}
.c_message br { display:none;}
.message .sign { margin-right: 0em; }
.message .message_img {
	float: none;
	width: 70%;
	margin: 20px auto 0;
}
.table dl {
    display: block;
    position: relative;
}
.table dl dt {
    width: 100%;
    padding: 20px 0 5px;
}
.table dl dd {
    width: 100%;
    padding: 0 0 20px;
}

.table dl::after {
    width: 100%;
}
.history {
    padding-bottom: 50px;
    margin: 30px 0 0 0;
}
.factory_img {
	margin: 0 0 20px 50%;
   height: 10px;
}
.history_factory {
    width: 100%;
    height: 200px;
    padding-top: 0;
    background-position: right;
    margin: 0 auto;
}
.contract_message {
    padding-right: 0;
    padding-bottom: 25px;
}
.contract_message:before,
.contract_message:after {
    display: none;
}
.page_contract h2 {
    font-size: 1em;
    padding-bottom: 30px;
}
.headerimg_contract {
    margin-bottom: 0; 
}
ul.border-box li {
    padding-bottom: 16px;
    font-size: .875em;
}
.btn_center {
    width: 90%;
	}
ul.contract_menu .contract_m1 .contract_content,
ul.contract_menu .contract_m1 .contract_img {
    float: none;
}
ul.contract_menu .contract_content, 
ul.contract_menu .contract_img {
    width: 100%;
    position: relative;
}
.contract_innbox {
    padding: 40px 12%;
	}
.eq_table table tbody tr td {
    padding: 20px 5px;
	}
table {
    margin:0;
}
.table::before {
    width: 100%;
	}
.contract_contact dl dt {
    width: 100%;
    padding: 10px 0 0 0;
}
.contract_contact dl dd {
    width: 100%;
    padding-bottom: 0;
}
.telline {
    padding: 1em 0 .5em 0;
}
.wpcf7-submit {
    font-size: 1em !important;
    padding: 20px 0 !important;
}
h1.page_head + .h_en {
    padding-left: 0;
}
.headerimg_contract {
    height: 200px;
	}
.headerimg_products {
    background-size: cover;
    height: 200px;
    margin-top: 20px;
    margin-bottom: 30px;
}
.product_index ul li {
    float: none;
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    margin-right: 0;
}
.product_index ul li div .inner {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 10px;
    color: #040000;
    border: 1px solid #fff;
    background-color: #fff;
    border-radius: 5px;
    transition: .2s;
}
.product_index { display:none;}
.product_header {
    font-size: 1.4em;
    padding-top: 0 !important;
    margin-bottom: 20px;
    margin-top: 0 !important;
}
.product_section h2 {
    padding-bottom: 5px !important;
}
.product_section ul li {
    display: block;
    float: left;
    width: 46%;
    margin-right: 2%;
    margin-left: 2%;
    padding-bottom: 10px;
}
.product_section ul li p {
    padding-bottom: 0;
}
.product_section ul {
    margin-top: 0px;
}
.btn_center_light {
    padding: 20px;
    width: 90%;
    padding: 15px !important;
    margin: 20px auto 0 !important;
    font-size: 1em;
    font-weight: 400;
}
.rightimg {
    position: relative;
    float: none;
    width: 80%;
    margin: 10px auto;
}
.rightimg img {
    position: relative;
    top: 0;
    right: 0;
}
.left50 {
    position: relative;
    float: none;
    width: 100%;
}
.page_uv ul.uv_use li {
    display: block;
    float: left;
    width: 48%;
    text-align: center;
    margin-right: 4%;
}
.page_uv ul.uv_use li:nth-child(even) {
    margin-right: 0;
}
.ta_r {
    text-align: left;
}
.linebox {
    border: 1px solid #065793;
    padding: 50px 8% 30px;
    background: #fff;
}
.btn_left {
    padding: 20px;
    width: 100%;
    margin: 20px 0;
    font-size: 1em;
    font-weight: 700;
}
.uv_con { font-size:1.2em;}
.fs_l {font-size: 1em;}
.certification {padding-left: 0;}
.access adress dl {
    display: block;
    padding: 0;
    margin: 0;
}
.access adress {
    font-size: 1em;
	margin-bottom: 40px;
}
.access .way div {
    width: 100%;
    float: none;
	margin-bottom:20px;
}
.access .way div h3 {
    font-size: .875em;
}
.policy dl dt {
    font-size: 1em;
}
.certification p, .certification ol {
    padding-bottom: 20px;
}
.access .map {
    padding-top: 80%;
}
.norec {
    border: 1px solid #ddd;
    padding: 50px;
    margin: 30px auto;
    width: 96%;
    font-size: .875em;
}
.product_section ul li.block2 {
    display: block;
    float: none;
    width: 100% !important;
    margin-right: 0;
	margin-left:0;
    padding-bottom: 10px;
}
.product_section ul li.block2 ul li {
    margin-left: 0;
}
	h3 .br-in { display:inline;}
.certification_img {
    float: none;
    padding: 0;
}
.headerimg_uv {
    height: 200px;
	}
.product_section1 .product_side, .product_section2 .case_side {
    margin-bottom: 50px;
}
.product_img_tn5000 {
    width: 80% !important;
    margin: 10px auto 0 !important;
}
.product_index div.index_h_cap {
	display:none;
}
.page_kandei h1 {
    font-size: 1.2em;
}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

product single

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

.product_category {
	padding:20px 0;
	font-size: .875em;
}
.product_category::before,
.case_content .place+a::before {
    content: '>';
    display: inline-block;
    padding-right: 5px;
    transform: scaleX(.8) translateY(-2px);
}
.product_single_header {
	position: relative;
	margin-top: 40px;
	height: 350px;
}
.product_single_header::after {
	content: '';
	display:block;
	background-image: url(/images/bg_blue2.gif);
	width:300%;
	height: 100%;
	position: absolute;
	top:-50px;
	left:-50%;
	z-index: -1;
}
.product_title {
	width:70%;
	padding-right: 5%;
}
.product_title h1 {
	font-size:2.2em;
	font-weight: 700;
	color:#fff;
	padding: 0;
}
.product_title .type { 
	font-size: .76em;
}
.product_title h2 {
	font-size: 1.4em;
	color:#fff;
	font-weight: 700;
	padding: 30px 0 20px;
}
.product_img {
	position: absolute;
	bottom:20px;
	right:0;
	width: 45%;
}
.product_img_kga{
	position: absolute;
	bottom:20px;
	right:0;
	width: 50%;
}
.product_img_psthin{
	position: absolute;
	bottom:0px;
	right:0;
	width: 50%;
}
.product_img_ec{
	position: absolute;
	bottom:20px;
	right:0;
	width: 48%;
}
.product_title .btn_left {
	width:50%;
	font-weight: bold;
	font-size: 1em;
	margin: 20px 0 0;
}
.product_wrapper {
	border-left:1px solid #E0DCDA;
	padding-left: 50px;
}

.product_menu { 
	padding: 20px 0 100px 0;
	margin-top: -45px;
}
.product_menu li {
	display: inline-block;
	font-size: .875em;
	padding: 0;
}
.product_menu li::before,
.product_menu li:last-child::after,
.product_footmenu ul li::before,
.product_footmenu ul li:last-child::after{
	content:'|';
	display: inline-block;
	color: #E0DCDA;
	padding: 0 .8em 0 .5em;
}
.product_wrapper section { padding: 0 0 80px 0;}
.product_wrapper section h2 {
	float: left;
	width: 30%;
	position: relative;
	font-size: 1.4em;
	color:#333;
	padding-bottom: 50px;
	font-weight: 700;
	letter-spacing: .1em;
}
.product_wrapper section h2:before {
	content: '';
    display: block;
    width: 30px;
    height: 4px;
    background: #F87E15;
    position: absolute;
    top: .4em;
    left: -50px;
}
.product_content {
	float: right;
	width:70%;
}

ul.dotline_list li {
	font-size: .875em;
	padding: 20px 1em 20px 60px;
	border-bottom:1px dashed #065793;
	line-height: 1.6em;
	text-align: justify;
	position: relative;
}
ul.dotline_list li:first-child {
	border-top:1px dashed #065793;
}
ul.dotline_list li::before {
	content:'0';
	font-weight: 800;
	font-size: 1.2em;
	color:#065793;
	position: absolute;
	top:50%;
	left:15px;
	transform: translateY(-50%);
}
ul.dotline_list li:first-child::before {content:'1.';}
ul.dotline_list li:nth-child(2)::before {content:'2.';}
ul.dotline_list li:nth-child(3)::before {content:'3.';}
ul.dotline_list li:nth-child(4)::before {content:'4.';}
ul.dotline_list li:nth-child(5)::before {content:'5.';}
ul.dotline_list li:nth-child(6)::before {content:'6.';}
ul.dotline_list li:nth-child(7)::before {content:'7.';}
ul.dotline_list li:nth-child(8)::before {content:'8.';}
ul.dotline_list p { padding:20px 0 0 0;}

ul.case_list li { 
	padding-bottom: 30px;
	position: relative;
}
ul.case_list li .case_content,
ul.case_list li .case_img {
	float: left;
	width: 50%;
}
ul.case_list li .case_content { padding-right: 5%;}
.case_content h3 {
	font-size: 1.2em;
	padding: 0 0 5px 0;
}
.case_content .place { 
	font-size:.875em; 
	color:#646464;
	padding-bottom: 10px;
}
.case_content a { padding-bottom: 10px; font-size: .875em;}
.case_content p { padding-top: 20px;}
.case_list li:first-child::after {
	content:'';
	display: block;
	background-color: #065793;
	width: 50%;
	height: 0;
	padding-top: 160px;
	position: absolute;
	top:-30px;
	right:-80px;
	z-index: -1;
}
.pdfbox { 
	background:#fff;
	padding:20px;
	text-align:center;
	border:1px solid #ccc;
}
.pdfbox span::before {
	content:'';
	display:inline-block;
	width: 25px;
    height: 25px;
    margin-bottom: -.3em;
    margin-right: 10px;
	background:url(/images/download.png);
	background-size:cover;
}
.price_table { 
	width: 100%;
	font-size:.875em;
	border-spacing: 0;
	margin-bottom: 30px;
}
.price_table thead {
	width: 100%;
	font-size: .875em;
	color:#065793;
	text-align: center;
}
.price_table thead tr td{
	border-bottom: 3px solid #065793;
	padding:0;
	padding-bottom: 10px;
}
.price_table thead tr td:first-child{ width:40%; text-align:center;}
.price_table tbody tr:first-child td:first-child{ text-align:center;}
.price_table thead tr td:nth-child(2) { width:20%; text-align: center;}
.price_table thead tr td:nth-child(3) { width:20%; text-align: right; transform: translateX(.5em);}
.price_table thead tr td:nth-child(4) { width:20%; text-align: right; transform: translateX(.5em);}
.price_table tbody tr td:first-child { text-align:center !important;}
.price_table tbody tr:first-child td:nth-child(2){ text-align:center !important;}

.price_mt tbody tr:nth-child(1) td:nth-child(2),
.price_mt tbody tr:nth-child(4) td:nth-child(2),
.price_mt tbody tr:nth-child(7) td:nth-child(2),
.price_mt tbody tr:nth-child(10) td:nth-child(2),
.price_mt5 tbody tr:nth-child(1) td:nth-child(2),
.price_mt5 tbody tr:nth-child(6) td:nth-child(2),
.price_mt5 tbody tr:nth-child(11) td:nth-child(2),
.price_mt5 tbody tr:nth-child(16) td:nth-child(2),
.price_mt5 tbody tr:nth-child(21) td:nth-child(2),
.price_mt5 tbody tr:nth-child(26) td:nth-child(2),
.price_mt5 tbody tr:nth-child(31) td:nth-child(2)
{ text-align:center !important;}

.price_mt_ecdx tbody tr:nth-child(36) td:nth-child(2),
.price_mt_ecdx tbody tr:nth-child(39) td:nth-child(2),
.price_mt_kok tbody tr:nth-child(6) td:nth-child(2),
.price_mt_kok tbody tr:nth-child(11) td:nth-child(2),
.price_mt_tg tbody tr:nth-child(2) td:nth-child(2),
.price_mt_tg tbody tr:nth-child(3) td:nth-child(2){ text-align:center !important;}



.table_tough thead tr td:first-child { width:30% !important;}
.table_tough thead tr td:nth-child(2) { width:10% !important; text-align: center;}
.table_tough thead tr td:nth-child(3) { width:20% !important; text-align: right;}
.table_tough thead tr td:nth-child(4) { width:20% !important; text-align: right;}
.table_tough thead tr td:nth-child(5) { width:20% !important; text-align: right;}
.table_tough tbody tr:first-child td:nth-child(2) { text-align:center !important;}
.table_tough tbody tr td {text-align: right !important;}

.pname span {display:inline-block; width:11em; text-align:left;}
.price_table tbody tr td{
	border-bottom: 1px dashed #065793;
	padding: 15px;
	text-align:right;
	font-size: .875em;
}
.product_lineup {}
.product_lineup li {
	float: left;
	display: block;
	width: 32.3%;
	margin-right:1.3%;
	text-align: center;
	font-size: .76em !important;
	line-height: 3em;
}
.product_lineup li:nth-child(3n) {
	margin-right:0; 
}
.product_lineup li:last-child {
	margin-right:0; 
}
ul.color_list { padding-bottom:1em;}
ul.color_list li {
	display:block;
	float:left;
	width:19.2%;
	margin-right:1%;
	text-align:center;
	font-size:.76em;
	font-weight: 700;
	padding-bottom:5px;
}
ul.color_list75 li {
	display:block;
	float:left;
	width:19.2%;
	max-width:75px;
	margin-right:1%;
	text-align:center;
	font-size:.76em;
	font-weight: 700;
	padding-bottom:5px;
}
ul.color_list li:nth-child(5){
	margin-right:0;
}
.list_cation li {
	font-size: .76em;
	padding: 0 0 1em 3em;
	text-indent: -1em;
	position: relative;
}
.list_cation li::before {
	content:'・';
	display: inline-block;
	padding: 0 1em 0 0;
}
.botton_area a.btn{ 
	width: 49.6%;
    display: inline-block;
	font-size: 1em;
	padding: 20px 0;
}
.botton_area a.btn:first-child {
	background: #646464;
}
.botton_area a.btn:first-child:hover{
	background: #323232 !important;
}
.product_footmenu { 
	text-align:center;
	padding-top: 60px;
}
.product_footmenu ul li {
	display: inline-block;
	font-size: .875em;
}
.product_footmenu ul li a {
	color:#646464;
}
.product_footmenu ul li a:hover {
	color:#F87E15;
}

#main_frame { 
	width:70%;
	float:left;
	padding-right:6.6%
}
#sub_frame {
	width: 30%;
	float: right;
}
.qa_category {
	font-size:.875em;
	font-weight: 700;
	padding: 20px 0;
}
.qa_list .q-a .open-button {
	display:block;
	width:100%;
	padding: 10px 50px 15px 70px;
	position: relative;
	border-bottom: 1px solid #D3D9DD;
	cursor: pointer;
	font-size: 1em;
	font-weight:700;
	color:#333;
}
.qa_list .open-button > span  {
	font-size: .76em !important;
	color:#646464 !important;
	display:block;
	font-weight:400 !important;
}
.qa_list .open-button > span a{
	color:#646464 !important;
}
.qa_list .q-a .open-button::before {
	content:'Q';
	display: block;
	font-size:1.8em;
	color:#fff;
	font-weight: 800;
	padding: 12px;
	background: #50B0E3;
	border-radius: 5px;
	position: absolute;
	top:10px;
	left:0;
}
.qa_list .q-a .ans::before,
.ans_single::before {
	content:'A';
	display: block;
	font-size:1.8em;
	color:#fff;
	font-weight: 800;
	padding: 12px;
	background: #C73164;
	border-radius: 5px;
	position: absolute;
	top:10px;
	left:0;
}
.qa_list .q-a .open-button::after{
	content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 3px solid #50B0E3;
    border-right: 3px solid #50B0E3;
    transform: rotate(135deg);
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    transition: .3s;
}
.qa_list .q-a > input[type="checkbox"]{ display:none;}
.qa_list .ans {
	padding: 0 0 0 70px;
	position: relative;
	height: 0;
	transform: translateY(-20px);
	overflow: hidden;
	transition: .3s;
	opacity: 0;
}
.qa_list .q-a > input[type="checkbox"]:checked ~ .ans,
.ans_single {
	height: auto;
	overflow: auto;
	transform: translateY(0);
	display: block;
	opacity: 1;
	padding: 5px 0 30px 70px;
}
.ans_single { padding-top:10px ;}

.qa_list .q-a > input[type="checkbox"]:checked ~ .open-button::after{
	transform: rotate(-45deg);
	top: calc(50% - 6px);
}

#sub_frame h2 {
	font-size: 1em;
	padding: 20px 0;
	border-bottom: 1px solid #50B0E3;
}
#sub_frame ul { margin:20px 0 0;}

#sub_frame li {
	font-size:.875em;
	padding-bottom: 1em;
}
#sub_frame a {color:#040000;}
#sub_frame a:hover {color:#6a6666;}
#sub_frame a+span { 
	display:inline-block;
	padding: 0 0 0 .5em;
	font-size: .76em;
	color: #646464;
}
.page_contact {
	padding: 50px 0 100px;
	
}
.page_contact p { padding-bottom:2em;}
.page_contact h2 {font-size:.875em;}
.page_contact .contactform {
	border-top:1px solid #E0DCDA;
	padding-top: 50px;
	margin-top: 30px;
}
.page_contact .contactform h2{
	font-size:1.2em !important;
	padding-bottom: 30px;
}
.form_area {
	padding: 0 0 20px 0;
}
.form_area>span {
	font-size: .875em;
	font-weight: bold;
	padding-bottom: 10px;
}
.casestudy article { padding-bottom: 50px;}
.casestudy article .product_category {
	display: inline-block;
	font-size: .76em;
	color:#fff;
	background: #F87E15;
	padding: 0px 10px;
	border-radius: 3px;
	margin-bottom: 20px;
}
.casestudy article .product_category a{ color:#fff !important;}
.casestudy article .product_category::before {
	display: none;
}
.casestudy article h1 {
	font-size: 1.4em;
	padding: 0 0 5px 0;
}
.casestudy article p {
	font-size: 1em;
}
.casestudy article .place {
	font-size: .76em;
	color:#646464;
	margin-bottom: 50px;
}
.casestudy article .img{
	margin-bottom: 2em;
}
@media screen and (max-width:48em) { 
/**************************************/

.product_side,.case_side {
    float: none !important;
    width: 100% !important;
	}
.product_section1 .case_side,
.product_section2 .case_side {
   padding-left: 0;
	padding-right:0;
	padding-top: 30px;
}
.product_header { margin-top: -100px;}
.product_wrapper {
    padding-right: 25px;
}
.product_wrapper section h2, 
.product_content {
    float: none;
    width: 100%;
}
.botton_area a.btn { width: 48%;}
.botton_area  { text-align:center; }
.product_title {
   width: 100%;
	padding-right:0;
}
.product_title h2 {
	 font-size: 1.2em;
    z-index: 10;
    position: relative;
    padding: 20px 0 30px;
	}
.product_img_psthin {
    bottom: 20px;
    width: 47%;
}
	.product_img_ec {
    position: absolute;
    bottom: 30px;
    right: -20px;
    width: 48%;
}
#main_frame,
#sub_frame {
    width: 100%;
    float: none;
    padding-right: 0;
}
#sub_frame { padding-bottom:50px;}
.page_contact { padding: 50px 0 0;}

}


@media screen and (max-width:26em) { 
/**************************************/
.product_title h1 {
    font-size: 1.4em;
}
.product_single_header::after {
    top: -30px;
}
.product_title h2 {
    font-size: 1em;
    padding: 10px 0 0;
}
.product_title .btn_left {
    width: auto;
    display: inline-block;
    font-weight: bold;
    font-size: 1em;
    padding: 15px;
}
.product_img_kga {
    position: relative;
    bottom: 20px;
    right: 0;
    width: 90%;
    margin: 0 auto;
}
.product_single_header::after {
    height: calc(100% + 30px);
}
.product_menu {
    padding: 20px 0 25px 0;
    margin-top: -15px;
}
.product_wrapper {
    border-left: 1px solid #E0DCDA;
    padding-left: 50px;
    margin-top: 15px;
}
.product_wrapper {
    border-left: 0;
    padding-left: 0;
    margin-top: 15px;
    padding-right: 0;
}
.product_wrapper section h2 {
    float:none;
    width: 100%;
    font-size: 1.2em;
    padding-bottom: 25px;
    margin-left: 30px;
	 margin-top: 20px;
}
.product_wrapper section h2:before {
    height: 4px;
    top: .5em;
    left: -45px;
}
ul.case_list li .case_content {
    padding-right: 0;
}
.case_list li:first-child::after {
    content: '';
    display: none;
	}
.case_content h3 {
    font-size: 1em;
}
ul.case_list li {
    padding-bottom: 15px;
}
ul.case_list li .case_content, ul.case_list li .case_img {
    float: none;
    width: 100%;
}
.product_wrapper section {
    padding: 0 0 40px 0;
}
.product_img {
    position: relative;
     bottom: 0;
    right: 0;
    width: 60%;
    margin: 0 auto;
}
.product_img_kgtmail {
    position: relative;
    bottom: 20px !important;
    right: 0;
    width: 80% !important;
    margin: 0 auto;
}
.product_img_psny {
    width: 70% !important;
    margin: -12% 0 0 40% !important;
}
.product_img_psnythin{
    width: 90% !important;
    margin: -5% 0 0 20% !important;
}
.product_img_ec {
    position: relative;
    bottom: 10px;
    right: 0;
    left: 25%;
    width: 85%;
	}
.product_img_mdm {
    position: relative;
    bottom: 10px;
    right: 0;
    left: 20%;
    width: 95%;
}
.product_img_psny6 {
    bottom: 20px;
    width: 90%;
    left: 25%;
    position: relative;
	}
.product_img_kgml6l {
    position: relative;
    bottom: 0;
    right: 0;
    width: 70%;
    margin: 0 auto;
}
.price_table {
    width: auto;
    display: block;
    overflow: scroll;
}
.price_table tr td {
    white-space: nowrap;
	   padding-left: 10px !important;
    padding-right: 10px !important;
}
.pdfbox { font-size: .875em; padding:60px 20px;}
.pdfbox a { display:block;}
.mb_m {  padding-bottom:20px !important;}
.qa_list .q-a .open-button::before {
    font-size: 1em;
    padding: 6px 12px;
	}
.qa_list .q-a .open-button {
    padding: 10px 50px 15px 50px;
	}
.qa_list .q-a .ans::before, .ans_single::before {
    font-size: 1em;
    padding: 6px 12px;
	}
.qa_list .q-a > input[type="checkbox"]:checked ~ .ans, .ans_single {
    padding: 5px 0 30px 50px;
	}
.qa_list .open-button > span {
    line-height: 1.4em;
}
.product_img_coksol{
    width: 75%;
    margin: -30px 0 0 27%;
}
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

cart

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */

.cart_page { overflow:unset !important;}
.buy_h {
    display: block;
    width: 140px;
    text-align: center;
    padding: 8px !important;
    background: #065793;
    border-radius: 20px;
    line-height: 1em;
    font-size: .96em;
    margin: 20px 0 0;
    color: #fff;
}
.buy_ol { 
	display: block;
    padding: 20px 20px 0 30px;
    margin: 0 0 20px 0;
}
.buy_ol li{ 
	font-size:.875em;
	padding:0 0 5px 1em;
	text-indent:-1em;
}

.page_cart {}
.cart_list { padding: 0; overflow:visible;}
.cart_list h2  {padding: 30px 0;}
.cart_list ul {
	padding: 0;
	margin: 0;
	overflow:visible;
}
.kokuso_info {
background: #fff7b1;
padding: 20px;
margin: 10px;
 border-radius: 5px;
font-size:.875em;
line-height:2em;
}
.kokuso_info ul li,.kokuso_info ul li:first-child {
border: 0 !important;
padding: 0 !important;
}
.kokuso_info h4{
font-weight: 700;
font-size: 1em;
margin-bottom:10px;
}
.tipimg { width:100px; height:auto; margin:3px 0;}
.cart_list ul li { border-bottom:1px dotted #E0DCDA; padding: 12px 0 12px 20px; font-size: .875em; transition: .2s; position:relative;}
.cart_list ul li.group { border-bottom:0 !important;}
.cart_list ul li:first-child {border-top:1px dotted #E0DCDA;}
.cart_list ul li.pate { border-bottom:1px solid #bbb;}
.cart_list ul li:hover { background-color: #efefef; padding: 20px 0 20px 20px; font-size: .875em;}
.cart_list ul li div {display: inline-block; padding: 0 1em;}
.cart_name { width:100%; padding: 8px 0;}
.cart_name a{ color: #333;}
.cart_name .c_red { color: #FF3333;}
.cart_name .c_black { color: #000;}
.cart_name .c_brown, 
.cart_name .c_tea{ color: #915112;}
.cart_name .c_orange,
.cart_name .c_map { color:#FFA930;}
.cart_name .c_maho { color:#8E692C;}
.cart_name .c_gree { color:#346A09;}
.cart_name .c_gray { color:#767676;}
.cart_vol { width: 23%; text-align: right;}
.cart_price { width: 21%; text-align: right;}
.cart_quantity { width: 19%; text-align: right;}
/*.cart_name_select .select_hdn{ width: 23%; text-align: right; vertical-align: bottom;  overflow: hidden; transition: 0.2s;}
.cart_name_select  label {display: inline-block; width: 10% !important; position: relative;}*/
.cart_quantity div { padding:0 !important; transition: 0.8s;}
.cart_quantity input[type="number"] {
    display: inline-block;
    padding: 0.7em;
    width: 6em;
}
.cart_name label {display:inline-block; width:33%; position:relative;}
.cart_name label:hover {color:#F87E15;}
.cart_name input[type="checkbox"]:checked  ~  div,
.cart_name input[type="checkbox"]:checked  ~  label {
  font-weight:700;
}
.toggle-wrap + p { display:none;}
.toggle-wrap br,
.toggle-wrap2 br,
.toggle-wrap3 br,
.toggle-wrap4 br,
.toggle-wrap5 br { display:none;}
	
.toggle-wrap .toggle-button,
.toggle-wrap2 .toggle-button2,
.toggle-wrap3 .toggle-button3,
.toggle-wrap4 .toggle-button4,
.toggle-wrap5 .toggle-button5{
	display: block;
	cursor: pointer;
	background-color: #fff;
	border: 1px solid #ccc;
	font-size: 1.4em;
	font-weight: bold;
	padding: 30px 20px;
	margin-bottom: 0;
	transition: .5s;
	position: relative;
}
.toggle-wrap .toggle-button span,
.toggle-wrap2 .toggle-button2 span,
.toggle-wrap3 .toggle-button3 span,
.toggle-wrap4 .toggle-button4 span,
.toggle-wrap5 .toggle-button5 span{
    display: block;
    font-size: .6em;
	color:#438bc1;
}
.toggle-wrap .toggle-button::after,
.toggle-wrap2 .toggle-button2::after,
.toggle-wrap3 .toggle-button3::after,
.toggle-wrap4 .toggle-button4::after,
.toggle-wrap5 .toggle-button5::after{
	content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 3px solid #065793;
    border-right: 3px solid #065793;
    transform: rotate(135deg);
    position: absolute;
    top: calc(50% - 8px);
    right: 40px;
    transition: .3s;
}
.toggle-wrap .toggle-button:hover,
.toggle-wrap2 .toggle-button2:hover,
.toggle-wrap3 .toggle-button3:hover,
.toggle-wrap4 .toggle-button4:hover,
.toggle-wrap5 .toggle-button5:hover{
  background:#efefef;
}
.toggle-wrap .toggle-content,
.toggle-wrap > input[type="checkbox"],
.toggle-wrap2 .toggle-content2,
.toggle-wrap2 > input[type="checkbox"],
.toggle-wrap3 .toggle-content3,
.toggle-wrap3 > input[type="checkbox"],
.toggle-wrap4 .toggle-content4,
.toggle-wrap4 > input[type="checkbox"],
.toggle-wrap5 .toggle-content5,
.toggle-wrap5 > input[type="checkbox"]{
	height: 0;
	transform: translateY(-50px);
	overflow: hidden;
	transition: .3s;
	opacity: 0;
}
.toggle-wrap5 {
    margin-bottom: 32px;
}
.contactform label {
    margin-bottom: 16px;
}

.toggle-wrap  p,
.toggle-wrap2 p,
.toggle-wrap3 p,
.toggle-wrap4 p,
.toggle-wrap5 p{ display:none;}
.toggle-wrap > input.cate1[type="checkbox"]:checked ~ .toggle-content,
.toggle-wrap2 > input.cate2[type="checkbox"]:checked ~ .toggle-content2,
.toggle-wrap3 > input.cate3[type="checkbox"]:checked ~ .toggle-content3,
.toggle-wrap4 > input.cate4[type="checkbox"]:checked ~ .toggle-content4,
.toggle-wrap5 > input.cate5[type="checkbox"]:checked ~ .toggle-content5{
	height: auto;
	overflow: auto;
	transform: translateY(0);
	display: block;
	opacity: 1;
	border:1px solid #bbb;
	border-top:0;
}
.toggle-wrap > input[type="checkbox"]:checked ~ .toggle-button,
.toggle-wrap2 > input[type="checkbox"]:checked ~ .toggle-button2,
.toggle-wrap3 > input[type="checkbox"]:checked ~ .toggle-button3,
.toggle-wrap4 > input[type="checkbox"]:checked ~ .toggle-button4,
.toggle-wrap5 > input[type="checkbox"]:checked ~ .toggle-button5{
	border-bottom: 0;
	background:#065793;
	color:#fff;
	z-index:1;
	position:relative;
}
.toggle-wrap > input[type="checkbox"]:checked ~  .toggle-button span,
.toggle-wrap2 > input[type="checkbox"]:checked ~ .toggle-button2 span,
.toggle-wrap3 > input[type="checkbox"]:checked ~ .toggle-button3 span,
.toggle-wrap4 > input[type="checkbox"]:checked ~ .toggle-button4 span,
.toggle-wrap5 > input[type="checkbox"]:checked ~ .toggle-button5 span{
	color:#fff;
}
.toggle-wrap > input[type="checkbox"]:checked ~ .toggle-button::after,
.toggle-wrap2 > input[type="checkbox"]:checked ~ .toggle-button2::after,
.toggle-wrap3 > input[type="checkbox"]:checked ~ .toggle-button3::after,
.toggle-wrap4 > input[type="checkbox"]:checked ~ .toggle-button4::after,
.toggle-wrap5 > input[type="checkbox"]:checked ~ .toggle-button5::after{
	transform: rotate(-45deg);
	top: calc(50% - 6px);
	border-color: #fff;
}
.total_sticky { 
    width: 100%;
    background: #646464;
    display: block;
    color: #fff;
    font-size: 1em;
    padding: 20px 20px 20px 30px;
    border-radius: 10px;
    position: -webkit-sticky;
    position: sticky;
    bottom: 10px;
	opacity: .9 !important;
}
.total_sticky div { display:block; }
.total_sticky div:first-child{
	float:right;
	width:auto;
	text-align:right;
	font-weight:700;
}
.total_sticky div:nth-child(2) {
    float: left;
    width: auto;
    text-align: left;
    font-size: .94em;
    font-weight: 400;
    padding-top: 15px;
    color: #fff90c;
}
.total_sticky div input{
	width: 6em;
    display: inline-block;
    margin: 0 10px;
    text-align: right;
	font-size:1.2em;
	border:0;
	border-bottom:1px solid #fff;
	border-radius:0;
	background: #646464;
	color:#fff;
	font-weight:700;
}
.total_sticky div input::placeholder {
 	color: #fff;
}
.pay {
    border: 1px solid #065793;
    padding: 0 0 30px;
    background: #fff;
}
.pay h1 {
	display:block !important;
	color:#fff;
	background: #065793;
	margin:0 0 30px 0;
	padding:15px 5%;
	text-align:center;
	font-size:1.2em;
}
.pay h2 {
	font-size:1em;
	padding:0 5% 15px;
	color:#065793;
}
.pay p {
	padding:0 5% 1em;
}

.cart_page div.wpcf7-response-output {
    margin: 0 0 0 30%  !important;
    border-radius: 5px;
    transform: translateY(-20px);
    background: #fff;
    width: 70%;
    padding: 0.4em 1em;
    border: 2px solid #ff0000;
}
/* 入力不可状態のスタイル */
.inputbox.none {
	color: #ccc;
   background: #ddd;
}

/* フォーカスされた時のスタイル */
.inputbox.active {
	opacity:1;
    color: #000;
	background:#faffc1;
    box-shadow:0px 0px 5px rgba(84,189,245,1);
}
.select_hdn select {
    color: #ccc; background: #ddd;
}
.cart_name_select input:checked ~ .select_hdn select {
    color: #333; background: #faffc1;
}
.kok_color_sample { display:none !important; transition:.5s; height:0; margin:0; padding:0; position:relative;}
.kok_color_sample span.ct { 
	float: left;
    width: 20%;
    font-size: .875em;
    background: #767676;
    color: #fff;
    padding: 0 10px;
    margin-top:5px;
    position: relative;
    text-align: center;
	font-weight: 400;
}
.kok_color_sample span#ct_2 { 
    position:absolute;
    font-size: .875em;
    background: #003333;
    color: #fff;
    padding: 0 10px;
    top:5px;
	left:0;
    text-align: center;
}
.kok_color_sample span.ct::after {
	content:'';
	position:absolute;
	right:-1px;
	top:25%;
	transform: rotate(45deg);
	display:block;
	background:#767676;
	width:10px;
	height:10px;
}
.cart_name_select input:checked ~ .kok_color_sample { height:auto; display:block !important; padding:10px 0 0 0;}
ul.cart_kok_color {
	position:relative;
	margin-top:0;
	width: 78%;
	float:right;
}
ul.cart_kok_color li {
    display: block;
    padding: 0 .2%  !important;
    float: left;
    width: 8.98%;
    min-width: 45px;
    margin-right: 0;
    text-align: center;
    font-weight: 700;
	border-bottom:0;
}
ul.cart_kok_color li:last-child { padding-right:0;}
ul.cart_kok_color li:first-child { border-top:0;}
ul.cart_kok_color li input[type="radio"] {
  display: none;
}
ul.cart_kok_color li label {
	display:block;
	width:100% !important;
	padding:4px 4px 0;
	margin-bottom:0;
	border-radius:3px;
	background:#fff;
	transition:.2s;
	cursor: pointer;
}
ul.cart_kok_color li label:hover { background:#d3d3d3; font-weight:700; color:#333;}
ul.cart_kok_color li label img { border-radius:3px; height:50px;}
ul.cart_kok_color li input[type="radio"]:checked + label  {
  background: #f8a115;
	color:#fff;
	font-weight:700;
	transform: rotateY(360deg);
}
.tip_list {
	font-size:14px;
	padding:15px 10px 15px 5px;
}
.tip_list li {
	text-align:left;
	line-height:1.6em;
}
.tip_list li::before {
	content:'・';
	display:inline-block;
}
.cart_thanks {
	margin: 80px 0 120px;
   text-align: center;
}
.cart_thanks h2 {
	font-size: 1.6em;
   margin: 0 0 40px;
   color: #f87e14;
}
.cart_thanks h2 span {
	display:inline-block;
}
.cart_thanks p {
	text-align: center; 
}

@media screen and (max-width:48em) { 
/**************************************/
.total_sticky { 
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 10px;
    position: -webkit-sticky;
    position: sticky;
    bottom: 10px;
	opacity: .9 !important;
}
.total_sticky div:first-child {
	float:none;
	width:100%;
	text-align:right;
	font-size:.76em;
}
.total_sticky div:nth-child(2) {
	float: none;
    width: 100%;
    text-align: left;
    font-size: .66em;
    line-height: 1.6em;
    font-weight: 400;
    padding-top: 10px;
}
.total_sticky div input{
	width: 7em;
    text-align: right;
	font-size:1em;
	padding:5px;
	font-weight:700;
}
.cart_page div.wpcf7-response-output {
    margin: 0 ;
	width:100%;
}
.cart_list ul li,.cart_list ul li:hover{ padding: 0 0 12px 10px;}
.cart_name label,.cart_vol,.cart_price,.cart_quantity { width:auto !important;}
.cart_quantity { float:right;}
.cart_name,.cart_vol,.cart_price { padding:1em 0 0 1em !important;}
.kok_color_sample span.ct {
    float: none;
    width: 96%;
    font-size: .875em;
    background: transparent;
    color: #333;
    padding: 0;
    text-align: left;
}
.kok_color_sample span.ct::after {
	display:none;
}
ul.cart_kok_color {
	position:relative;
	margin-top:0;
   width: calc(100% - 1px);
	float:none;
}
}
@media screen and (max-width:26em) { 
/**************************************/
.toggle-wrap .toggle-button, .toggle-wrap2 .toggle-button2, .toggle-wrap3 .toggle-button3, .toggle-wrap4 .toggle-button4, .toggle-wrap5 .toggle-button5 {
    font-size: 1.2em;
    padding: 20px 20px;
}
.cart_name, .cart_vol, .cart_price {
    padding: 0 !important;
}
.buy_ol {
    padding: 20px 20px 0 10px;
	}
.cart_list ul li {
    padding: 12px 0 12px 10px;
	}
.cart_list ul li:hover { padding: 20px 0 20px 10px; }
.cart_name label {
    display: inline-block;
    width: auto;
    position: relative;
}
.toggle-wrap .toggle-button span, 
	.toggle-wrap2 .toggle-button2 span, 
	.toggle-wrap3 .toggle-button3 span, 
	.toggle-wrap4 .toggle-button4 span,
	.toggle-wrap5 .toggle-button5 span {
    line-height: 1.4em;
	}
.toggle-wrap .toggle-button::after, .toggle-wrap2 .toggle-button2::after, .toggle-wrap3 .toggle-button3::after, .toggle-wrap4 .toggle-button4::after, .toggle-wrap5 .toggle-button5::after {
    right: 20px;
	}
.pay p {
		text-align: unset;
	}
.cart_name_select label {
    width: auto !important;
}
.cart_name_select .select_hdn {
    width: 100%;
}
.cart_name_select .cart_vol,.cart_name_select .cart_price { padding:.5em 0; text-align:right;}
.cart_quantity {
    float: right;
    width: 100% !important;
}
.cart_name_select .cart_quantity { margin-bottom:10px;}
ul.cart_kok_color {padding: 0;}
.kok_color_sample span.ct { 
	float: none;
    width: 96%;
    font-size: .875em;
    background: #767676;
    color: #fff;
    padding: 0 5px;
	margin:10px 0;
    display: inline-block;
    position: relative;
    text-align: center;
    font-weight: 400;
}
.kok_color_sample span.ct::after {
	display:block;
	right:50%;
	top:unset;
	bottom:-1px;
	transform: rotate(45deg);
}
ul.cart_kok_color {
	position:relative;
	margin-top:0;
	width: 100%;
	float:none;
}
ul.cart_kok_color li {
    display: block;
    padding: 0 1% !important;
    float: left;
    width: 24%;
    margin-bottom: 10px;
}
ul.cart_kok_color li label img {
    border-radius: 3px;
    height: 40px;
}
a[name] {
    padding-top: 0;
    margin-top: 0;
    display: block;
    height: 0;
}
.cart_thanks {
	margin: 60px 0;
   text-align: center;
}
.cart_thanks h2 {
	font-size: 1.4em;
   margin: 0 0 40px;
   color: #f87e14;
}
.cart_thanks p {
	text-align: left;
	padding:0 5%;
}
.page_kandei h1 {
    font-size: 1.2em;
    margin-bottom: 24px;
}
.page_kandei .img_main {
    margin-bottom: 24px;
}
.page_kandei h2 {
    font-size: 1.1em;
    margin-bottom: 16px;
}
.page_kandei .kandei_contact {
    padding: 0 0 0 16px;
    margin: 32px 0 32px;
}
.page_kandei .kandei_contact p:last-child, .page_kandei p, .page_kandei ul li {
    font-size: .875em;
}
.page_kandei ul li span {
	display: block;
}
.page_kandei .nakahashi .small {
    display: block;
    font-size: .75em;
    margin-bottom: 16px;
}
.page_kandei .nakahashi h3 {
    margin: 24px 0;
    font-size: 1em;
}
.page_kandei .nakahashi {
    padding: 24px 7%;
    margin-bottom: 32px;
}
.kandei_works li {
    margin-bottom: 0;
}
.page_kandei .img_main span, .kandei_works li span {
    font-size: .75em;
}
}