@charset "UTF-8";

/* common style
---------------------------------------------*/
/* width */
.w90p {width: 90%;}
.w85p {width: 85%;}
.w57p {width: 57%;}
.w46p {width: 46%;}
.w23p {width: 23%;}
.w17p {width: 17%;}
.w14p {width: 14%;}
.w10p {width: 10%;}
.w8p {width: 8%;}
.w2p {width: 2%;}
.w1p {width: 1%;}
.w452 {width: 452px;}
.w347 {width: 347px;}
.w210 {width: 210px;}
.w85 {width: 85px;}
.w80 {width: 80px;}
.w75 {width: 75px;}
.w70 {width: 70px;}
.w68 {width: 68px;}
.w50 {width: 50px;}
.w20 {width: 20px;}
.w11 {width: 11px;}
.wauto {width: 100% !important;}
.wat {width: auto;}

/* margin top0-100, right0-30, bottom0, left0-30 */
.mgt0 {margin-top: 0px !important;}
.mgt5 {margin-top: 5px !important;}
.mgt10 {margin-top: 10px !important;}
.mgt15 {margin-top: 15px !important;}
.mgt20 {margin-top: 20px !important;}
.mgt25 {margin-top: 25px !important;}
.mgt30 {margin-top: 30px !important;}
.mgt35 {margin-top: 35px !important;}
.mgt40 {margin-top: 40px !important;}
.mgt45 {margin-top: 45px !important;}
.mgt50 {margin-top: 50px !important;}
.mgt55 {margin-top: 55px !important;}
.mgt60 {margin-top: 60px !important;}
.mgt65 {margin-top: 65px !important;}
.mgt70 {margin-top: 70px !important;}
.mgt75 {margin-top: 75px !important;}
.mgt80 {margin-top: 80px !important;}
.mgt85 {margin-top: 85px !important;}
.mgt90 {margin-top: 90px !important;}
.mgt95 {margin-top: 95px !important;}
.mgt100 {margin-top: 100px !important;}
.nmgt0 textarea, .nmgt0 input {margin-top: 0 !important;}

.mgr0 {margin-right: 0px !important;}
.mgr5 {margin-right: 5px !important;}
.mgr10 {margin-right: 10px !important;}
.mgr15 {margin-right: 15px !important;}
.mgr20 {margin-right: 20px !important;}
.mgr25 {margin-right: 25px !important;}
.mgr30 {margin-right: 30px !important;}

.mgb0 {margin-bottom: 0 !important;}
.mgb10 {margin-bottom: 10px !important;}
.mgb20 {margin-bottom: 20px !important;}
.mgb30 {margin-bottom: 30px;} 
.mgb50 {margin-bottom: 60px !important;;} 

.mgl0 {margin-left: 0px !important;}
.mgl5 {margin-left: 5px !important;}
.mgl10 {margin-left: 10px !important;}
.mgl15 {margin-left: 15px !important;}
.mgl20 {margin-left: 20px !important;}
.mgl25 {margin-left: 25px !important;}
.mgl30 {margin-left: 30px !important;}
.nmgl0 input {margin-left: 0 !important;}

.mglA {margin: 0 auto;}
.mglA5 {margin: 0 5px;}
.mgall10 {margin: 10px;}
.mg10a {margin: 10px auto;}

/* padding all0-50 */
.pdt0 {padding-top: 0px !important;}
.pdt5 {padding-top: 5px !important;}
.pdt10 {padding-top: 10px !important;}
.pdt15 {padding-top: 15px !important;}
.pdt20 {padding-top: 20px !important;}
.pdt25 {padding-top: 25px !important;}
.pdt30 {padding-top: 30px !important;}
.pdt35 {padding-top: 35px !important;}
.pdt40 {padding-top: 40px !important;}
.pdt45 {padding-top: 45px !important;}
.pdt50 {padding-top: 50px !important;}
.pdr0 {padding-right: 0px !important;}
.pdr5 {padding-right: 5px !important;}
.pdr10 {padding-right: 10px !important;}
.pdr15 {padding-right: 15px !important;}
.pdr20 {padding-right: 20px !important;}
.pdr25 {padding-right: 25px !important;}
.pdr30 {padding-right: 30px !important;}
.pdr35 {padding-right: 35px !important;}
.pdr40 {padding-right: 40px !important;}
.pdr45 {padding-right: 45px !important;}
.pdr50 {padding-right: 50px !important;}
.pdb0 {padding-bottom: 0px !important;}
.pdb5 {padding-bottom: 5px !important;}
.pdb10 {padding-bottom: 10px !important;}
.pdb15 {padding-bottom: 15px !important;}
.pdb20 {padding-bottom: 20px !important;}
.pdb25 {padding-bottom: 25px !important;}
.pdb30 {padding-bottom: 30px !important;}
.pdb35 {padding-bottom: 35px !important;}
.pdb40 {padding-bottom: 40px !important;}
.pdb45 {padding-bottom: 45px !important;}
.pdb50 {padding-bottom: 50px !important;}
.pdl0 {padding-left: 0px !important;}
.pdl5 {padding-left: 5px !important;}
.pdl10 {padding-left: 10px !important;}
.pdl15 {padding-left: 15px !important;}
.pdl20 {padding-left: 20px !important;}
.pdl25 {padding-left: 25px !important;}
.pdl30 {padding-left: 30px !important;}
.pdl35 {padding-left: 35px !important;}
.pdl40 {padding-left: 40px !important;}
.pdl45 {padding-left: 45px !important;}
.pdl50 {padding-left: 50px !important;}
.pda35 {padding-left: 35px !important;}

.pdall10{padding: 10px;}
.prem1 {padding-left: 1rem;}

/* float */
.floatL {float: left;}
.floatR {float: right;}

/* font */
.txtL {text-align: left;}
.txtC {text-align: center;}
.txtR {text-align: right;}
.vaT {vertical-align: top;}
.vaM {vertical-align: middle;}
.vaB {vertical-align: bottom;}
.bold {font-weight: bold;}
.noBold {font-weight: normal;}
.nowrap {white-space: nowrap;}
.txtBlack01 {color: #000000;}
.txtGreen01 {color: #02993B;}
.txtRed01 {color: #c1272d;}
.fs_sml01 {font-size: 1.2rem !important;}
.fs_mdl01 {font-size: 1.4rem !important;}
.fs_lar01 {font-size: 1.6rem !important;}

/* 上付き文字 */
sup {
	display: inline;
	font-size: 1.0rem;
	line-height: 0.3em;
	vertical-align: baseline;
	position: relative;
	top: -0.4em;
	/* vertical-align: inherit; */
}

/*背景色*/
.bg_gray01{
	background-color: #f2f2f2;
}
.bg-gray {background-color: #eeeeee;}
.bg-bright_gray {background-color: #f2f2f2;}

/* ボーダー */
.border-double {
  border: 4px double #adabab;
}
.border-dotted-bt {
  border-bottom: 1px dotted #adabab;
}
.border-solid {
  border: 1px solid #adabab;
}
.border-solid-bt {
  border-bottom: 1px solid #adabab;
}
.border-solid-r {
  border-right: 1px solid #adabab;
}

/* フォント */
.yakuhanjp {font-family: YakuHanJP, "Hiragino Sans", Meiryo, "Yu Gothic Medium", sans-serif;}

/*clearfix*/
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* リンク */
[class*="link_"]{
	position: relative;
}
.link_arrow01:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_arrow_square01.png) no-repeat 0 0 / 100%;
	vertical-align: middle;
	margin-right: 5px;
}
.link_arrow01_line01:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
	vertical-align: middle;
	margin-right: 5px;
}
.link_arrow02:before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin: -4px 10px 0 -5px;
}
.link_arrow02_prev:before {
	content: '';
	display: inline-block;
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	vertical-align: middle;
	margin: -4px 5px 0 0;
}
.link_arrow03::before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_arrow_square03.png) no-repeat 0 0 / 100%;
	vertical-align: middle;
	margin-right: 5px;
}

.link_Btn01 {
	display: inline-block;
	background: #c1272d;
	padding: 5px 15px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
	text-decoration: none;
}
.link_Btn01.arrow01 {
	position: relative;
	display: block;
}
.link_Btn01.arrow01:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4px;
}

.show_pc{
	display: block;
}
.show_sp{
	display: none;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.show_pc{
		display: none !important;
	}
	.show_sp{
		display: block !important;
	}
}

*{box-sizing: border-box;}

/*Android
----------------------*/
.Android .listMark {
	font-family: HiraKakuProN-W3, 'ヒラギノ角ゴ Pro W3';
}

/*---------------------------------------------
grid グリッドレイアウト
---------------------------------------------*/
/*amp-*/
.grid_col2 {
	margin-top: 30px;
}
	.grid_col2 .grid_item {
		float: left;
		width: calc((100% - 30px) / 2);
		margin: 30px 30px 0 0;
	}
	.grid_col2 .grid_item:nth-of-type(2n) {
		margin-right: 0;
		float: right;
	}

.grid_col3 {
	margin-top: 30px;
}
	.grid_col3 .grid_item{
		float: left;
		width: calc((100% - 44px) / 3);
		margin-top: 40px;
		margin-right: 22px;
	}
	.grid_col3 .grid_item:nth-of-type(3n) {
		margin-right: 0 !important;
	}

/*-mq-*/
@media screen and (max-width: 768px) {
	.grid_col2 .grid_item{
		float: none;
		width: 100%;
		margin-right: 0;
	}
	.grid_col2 .grid_item:nth-of-type(2n) {
		margin-top: 30px;
		float: none;
	}

	.grid_col3 .grid_item {
		float: none;
		width: 100%;
		margin-right: 0;
	}
	.grid_col3 .grid_item:first-of-type {
		margin-top: 0;
	}
}
/*-amp*/

/*---------------------------------------------
loader
---------------------------------------------*/
.load {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 99999;
	text-align: center;
	background-color: rgba(255, 255, 255, 0.9);
}

.load img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 27px;
	margin: auto;
}

/*.tool{
position: absolute;
bottom: -54px;
right: 0;
display: inline-block;
z-index: 1;
}
.tool li{
display: inline-block;
width: 50px;
}
.tool li a{
display: block;
padding: 15px;
text-align: center;
border-radius: 0 0 5px 5px / 0 0 5px 5px;
-webkit-border-radius: 0 0 5px 5px / 0 0 5px 5px;
-moz-border-radius: 0 0 5px 5px / 0 0 5px 5px;
}
.tool li.btn_history a{
background: #262626;
}
.tool li.btn_bookmark a{
background: #c1272d;
}
.tool li a img{
width: 15px;
}*/

/*---------------------------------------------
breadCrumbs パンくずリスト
---------------------------------------------*/
/*amp-*/
#breadCrumbs {
/*	background-color: #cccccc;*/
}
	#breadCrumbs .inner {
		width: 980px;
		margin: auto;
		padding: 10px 0;
		box-sizing: border-box;
	}
		#breadCrumbs .inner .links li {
			float: left;
			font-size: 1.2rem;
			color: rgba(0,0,0,0.3);
		}
		#breadCrumbs .inner .links li:after {
			content: '';
			display: inline-block;
			width: 6px;
			height: 6px;
			border: 0px;
			border-top: solid 1px #4d4d4d;
			border-right: solid 1px #4d4d4d;
			-ms-transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
			vertical-align: middle;
			margin: -3px 10px 0 ;
		}
		#breadCrumbs .inner .links li:last-of-type:after {
			display: none;
		}
			#breadCrumbs .inner .links li a {
				font-size: 1.2rem;
				text-decoration: none;
				color: rgba(0,0,0,1);
			}
				#breadCrumbs .inner .links li.home a img {
					width: 14px;
					vertical-align: text-top;
				}
@media screen and (max-width: 1300px) and (min-width: 980px) {
	#breadCrumbs .inner {
		width: 600px;
	}
}
@media screen and (max-width: 979px) {
	#breadCrumbs .inner {
		width: 100%;
		padding: 10px 20px;
	}
}
/*-amp*/

/*---------------------------------------------
pageControl
---------------------------------------------*/
.pageControl a {
	font-weight: bold;
	text-decoration: none;
}
.pageControl a:before {
	content: '';
	display: inline-block;
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	vertical-align: middle;
	margin: -4px 5px 0 0;
}

/*---------------------------------------------
content
---------------------------------------------*/
/*amp-*/
#container{
	width: 100%;
	height: 100%;
	padding-top: 160px;
	padding-bottom: 60px;
	position: relative;
}
	#container .contents {
		width: 980px;
		height: 100%;
		margin: auto;
		position: relative;
	}
	#container .contents.wfull {
		width: 100%;
	}
	#container .contents.w800 {
		width: 800px;
	}
	#container .contents:before {
		display: none;
	}
		#container .contents .pageControl {
			margin: 25px 0 0;
		}
		#container .contents > section {
			margin-bottom: 80px;
		}
@media screen and (max-width: 979px) {
	#container{
		padding-top: 0;
	}
	#container .contents.w800 {
		width: 100%;
	}
	#container .contents {
		width: 100%;
		padding: 0 20px 80px;
		box-sizing: border-box;
	}
}
/*-amp*/

/* shadow */
.wrap_shadow01{
	background: #fff;
	box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
}
/* shadow */
.wrap_shadow01 .title_line01:first-of-type{
	margin-top: 0;
}

/*---------------------------------------------
parts
---------------------------------------------*/

/* title */

/*amp-*/
.title_line01{
	margin: 80px 0 50px;
	padding: 0 0 10px;
	border-bottom: 1px solid #ddd;
	position: relative;
}
.title_line01.noborder{
	border-bottom: none;
}
.title_line01:after{
	position: absolute;
	content: " ";
	display: block;
	border-bottom: 1px solid #c1272d;
	bottom: -1px;
	width: 80px;
}
.title_line01.noborder:after{
	border-bottom: none;
}
	.title_line01 .category{
		font-size: 2.0rem;
	}
.title_normal01{
	margin: 80px 0 50px;
	text-align: center;
}
.title_cs{
	margin: 80px 0 50px;
	text-align: center;
}
@media screen and (max-width: 580px) {
	.title_cs{
		margin: 115px 0 50px;
		text-align: left;
	}
	.title_normal01{
		margin: 60px 0 30px;
		text-align: center;
	}
}
/*-amp*/

.title_side01{
	margin: 80px 0 50px;
}
	.title_side01 > *{
		display: table-cell;
		vertical-align: middle;
		line-height: 1;
	}
	.title_side01 > h1{
		padding-right: 20px;
		border-right: 1px solid #ccc;
	}
	.title_side01 > h1 + p{
		padding-left: 20px;
	}
/*-mq-*/
@media screen and (max-width: 580px) {
	.title_side01{
		margin: 60px 0 30px;
	}
}

/*amp-*/
.title-page01{
	font-size: 3.6rem;
	font-weight: normal;
}
@media screen and (max-width: 580px) {
	.title-page01{
		font-size: 2.2rem;
	}
}
.title-xlg01{
	font-size: 4.0rem;
	font-weight: normal;
}
@media screen and (max-width: 580px) {
	.title-xlg01{
		font-size: 3.6rem;
	}
}
.title-lg01{
	font-size: 2.0rem;
	font-weight: bold;
}
.title-lg01 {
	position: relative;
}
	.title-lg01 .bfont {
		position: absolute;
		left: 0px;
		top: 60px;
		text-align: center;
		width: 100%;
	}
.title-md01{
	font-size: 1.8rem;
	font-weight: bold;
}
.title-sm01{
	font-size: 1.4rem;
	font-weight: bold;
}
.title-en{
	white-space: nowrap;
	font-size: 1.4rem;
	color: #c1272d;
}
/*-amp*/

/* list */
.defList_ind01 li {
	margin-left: 1.4rem;
	text-indent: -1.4rem;
}
.defList_ind02 li {
	display: table;
}
.defList_ind02 li .listMark,
.defList_ind02 li .listCont {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}
.defList_ind02 li .listMark {
	padding-right: 5px;
	white-space: nowrap;
}

/*amp-*/
.link_list01 li{
	margin-bottom: 10px;
}
.link_list01 li:last-of-type{
	margin-bottom: 0;
}
.link_list01 li a{
	display: block;
	padding-left: 17px;
	position: relative;
}
.link_list01 li a:before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin: 0;
	position: absolute;
	left: 0;
	top: 8px;
}
/*-amp*/

.link_list02 li{
	margin-bottom: 20px;
	width: calc((100% - 40px) / 3);
	display: inline-block;
	margin-right: 20px;
	float: left;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}
.link_list02 li:nth-of-type(3n){
	margin-right: 0px;
}
.link_list02 li a{
	padding: 20px;
	position: relative;
	display: block;
	text-decoration: none;
}
.link_list02 li a:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
	margin: 0 6px 0 0;
	vertical-align: -2px;
}
/*-mq-*/
@media screen and (max-width: 768px) {
	.link_list02 li{
		width: 100%;
		display: block;
		margin-right: 0px;
		margin-bottom: 0px;
		float: none;
		border-bottom: 0;
	}
	.link_list02 li:last-of-type{
		border-bottom: 1px solid #cccccc;
	}
}

.news_list01 dt{
	float: left;
	clear: both;
	max-width: 110px;
	padding: 0 15px 10px 0;
	box-sizing: border-box;
	color: rgba(0,0,0,0.5)
}
.news_list01 dd{
	padding: 0 0 10px 15px;
}
/*-mq-*/
@media screen and (max-width: 768px) {
	.news_list01 dt{
		float: none;
		max-width: auto;
		padding: 0 15px 0 0;
	}
	.news_list01 dd{
		padding: 5px 0 15px;
	}
}

/* pic */
.pic_nom01{
	width: 100%;
}
.pic_mini01{
	width: 800px;
	margin: auto;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.pic_mini01{
		width: 100%;
	}
}

/*---------------------------------------------
form
---------------------------------------------*/

/* input type="radio" のみ */

#container form input[type="radio"] {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	overflow: hidden;
	padding: 0;
	clip: rect(0, 0, 0, 0);
}


#container form input[type="radio"]:checked + label::before {
	background: #fff;
	border: 1px solid #dddddd;
}

#container form input[type="radio"]:checked + label::after {
	opacity: 1;
	/*-webkit-transform: scale(1);
	transform: scale(1);*/
}


/* input type="checkbox" のみ */
#container .contents .normal input[type="checkbox"] {
	margin: 0 5px 0 0;
	background: initial;
	border: initial;
	border-radius: initial;
	outline: initial;
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
	font-size: 1.4rem;
	width: auto;
}
#container .contents .checkbox01 input[type="checkbox"] {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	overflow: hidden;
	padding: 0;
	clip: rect(0, 0, 0, 0);
}

#container .contents .checkbox01 label {
	position: relative;
	display: inline-block;
	padding: 8px 3px 3px 25px;
	margin-right: 15px;
	cursor: pointer;
	-webkit-transition: all .2s;
	transition: all .2s;
}

#container .contents .checkbox01 label::before,
#container .contents .checkbox01 label::after {
	position: absolute;
	content: '';
	-webkit-transition: all .2s;
	transition: all .2s;
}

#container .contents .checkbox01 label::before {
	top: 50%;
	left: 0;
	width: 18px;
	height: 18px;
	margin-top: -8px;
	background: #f4f4f4;
	border: 1px solid #ccc;
}

#container .contents .checkbox01 label::after {
	opacity: 0;
	top: 50%;
	left: 4px;
	width: 10px;
	height: 6px;
	margin-top: -4px;
	border-left: 2px solid #c1272d;
	border-bottom: 2px solid #c1272d;
	-webkit-transform: rotate(-45deg) scale(.5);
	transform: rotate(-45deg) scale(.5);
}

#container .contents .checkbox01 label:hover::before {
	background: #fff;
}

#container .contents .checkbox01 input[type="checkbox"]:checked + label::before {
	background: #fff;
}

#container .contents .checkbox01 input[type="checkbox"]:checked + label::after {
	opacity: 1;
	-webkit-transform: rotate(-45deg) scale(1);
	transform: rotate(-45deg) scale(1);
}



/* input type="text" のみ */
#container form input[type="text"] {
	property: value;
	border: 1px solid #ccc;
	padding: 10px 10px;
	resize: vertical;
	width: 100%;
	-webkit-appearance: textfield;
	/* 1 */
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	/* 2 */
	box-sizing: border-box;
	resize: vertical;
	font-size: 1.4rem;
	border-radius: 3px;
}

/* textarea のみ */
#container .contents textarea {
	property: value;
	border: 1px solid #ccc !important;
	padding: 10px 10px;
	font-size: 1.4rem;
	width: 100%;
	display: block;
	-webkit-appearance: textfield;
	/* 1 */
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	/* 2 */
	box-sizing: border-box;
	resize: vertical;
	border-radius: 3px;
}

/* input type="button" input type="submit"  */

/*amp-*/
#container form *[type="button"],
#container form *[type="submit"] {
	property: value;
	background: #c1272d ;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 10px 10px 10px ;
	color: #fff;
	border-radius: 3px;
}
#container form *[type="button"].other01,
#container form *[type="submit"].other01  {
	background: #c1272d ;
}

#container form *[type="button"]:hover,
#container form *[type="submit"]:hover {
	cursor: pointer;
	opacity: 0.6;
}

#container form *[type="button"].white01,
#container form *[type="submit"].white01 {
	background-color: #fff;
	border: 1px solid #cccccc;
	color: #000000;
}
/*-amp*/

#container form .radioBtn01 label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 25px;
	margin-right: 15px;
	cursor: pointer;
}

#container form .radioBtn01 label::before,
#container form .radioBtn01 label::after {
	position: absolute;
	content: '';
	top: 50%;
	border-radius: 100%;
	-webkit-transition: all .2s;
	transition: all .2s;
}

#container form .radioBtn01 label::before {
	left: 0;
	width: 16px;
	height: 16px;
	margin-top: -9px;
	background: #f3f3f3;
	border: 1px solid #ccc;
}

#container form .radioBtn01 label:hover::before {
	background: #fff;
}

#container form .radioBtn01 label::after {
	opacity: 0;
	left: 3px;
	width: 12px;
	height: 12px;
	margin-top: -6px;
	background: #c1272d;
	-webkit-transform: scale(2);
	transform: scale(2);
}

#container form input[type="text"].searchBox{
	padding-left: 40px;
	background: url(../images/common/icon_search01.png) no-repeat 10px center / 20px;
}

/* プルダウン */

#container .select01 {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	z-index: 1;
}
#container .select01 select {
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	z-index: 2;
	display: block;
	margin: 0;
	padding: 10px 35px 10px 15px;
	background: transparent;
	line-height: 1.5;
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-radius: 3px;
	font-size: 1.4rem;
	min-width: 200px;
}
#container .select01:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -7px;
}

#container .select01 select option {
	margin-bottom: 1px;
}


input::placeholder {
	color: rgba(0,0,0,0.5);
}

/*---------------------------------------------
table
---------------------------------------------*/
/*amp-*/
table {
	width: 100%;
	table-layout: fixed;
	word-break: break-word;
	border-collapse: collapse;
	border-spacing: 0;
}
/*-amp*/

.title_line01 + .contScroll_h01{
	margin-top: -30px;
}
.contScroll_h_def {
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	position: relative;
	box-sizing: border-box;
}
.contScroll_h_def::-webkit-scrollbar {
	/*tableにスクロールバーを追加*/
	width: 5px;
}
.contScroll_h_def::-webkit-scrollbar-track {
	/*tableにスクロールバーを追加*/
	background: #F1F1F1;
}
.contScroll_h_def::-webkit-scrollbar-thumb {
	/*tableにスクロールバーを追加*/
	background: #4d4d4d;
}

.contScroll_h01 {
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	position: relative;
	height: 200px;
	padding: 20px;
	background: #f2f2f2;
	box-sizing: border-box;
}
.contScroll_h01::-webkit-scrollbar {
	/*tableにスクロールバーを追加*/
	width: 5px;
}
.contScroll_h01::-webkit-scrollbar-track {
	/*tableにスクロールバーを追加*/
	background: #F1F1F1;
}
.contScroll_h01::-webkit-scrollbar-thumb {
	/*tableにスクロールバーを追加*/
	background: #4d4d4d;
	border-radius: 100px;
}



/*-mq-*/
@media screen and (max-width: 979px) {
	/*SP幅時 横スクロール*/
	.contScroll_w01-sp {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		position: relative;
	}

	.contScroll_w01-sp::-webkit-scrollbar {
		/*tableにスクロールバーを追加*/
		height: 5px;
	}
	.contScroll_w01-sp::-webkit-scrollbar-track {
		/*tableにスクロールバーを追加*/
		background: #F1F1F1;
	}
	.contScroll_w01-sp::-webkit-scrollbar-thumb {
		/*tableにスクロールバーを追加*/
		background: #4d4d4d;
		border-radius: 100px;
	}
	.contScroll_w01-sp table {
		width: 210%;
	}
}


/*上見出し*/
.tblBlock_thT01 th {
	padding: 5px 10px;
	background: #f2f2f2;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	text-align: center;
}

.tblBlock_thT01 td {
	padding: 5px 10px;
	border-bottom: 1px solid #cccccc;
	border-top: none;
	word-wrap: break-word;
}


/*背景色交互*/
/*amp-*/
.tblBlock_even-gray01 tr th{
	padding: 5px 5px;
	vertical-align: top;
}
.tblBlock_even-gray01 > tbody > tr > th ,
.tblBlock_even-gray01 > tbody > tr > td {
	background: #ffffff;
	border-bottom: 1px solid #cccccc;
}

.tblBlock_even-gray01 tr td table tr td{
	padding: 5px 10px;
	border-bottom: 1px solid #cccccc;
	vertical-align: top;
}
.tblBlock_even-gray01 tr td table tr:last-of-type td {
	border-bottom: 0;
}
.tblBlock_even-gray01 tr td table tr.bord_none01 > * {
	border-bottom: 0;
}
.tblBlock_even-gray01 > tbody > tr:nth-of-type(even) th ,
.tblBlock_even-gray01 > tbody > tr:nth-of-type(even) td {
	background: #e5e5e5;
}
.tblBlock_even-gray01 th{
	width: 25%;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.tblBlock_even-gray01 > tbody > tr > th ,
	.tblBlock_even-gray01 > tbody > tr > td {
		display: block;
		width: 100%;
	}
	.tblBlock_even-gray01 > tbody > tr > th{
		padding: 15px 10px;
		font-size: 1.6rem;
		font-weight: bold;
		border-top: 2px solid #ccc;
	}
	.tblBlock_even-gray01 tr td table tr td{
		padding: 15px 10px;
	}

}
/*-amp*/

/*入力フォーム系用*/
.tblBlock_address01 th {
	padding: 8px 10px 30px 0;
	text-align: left;
	width: 170px;
	vertical-align: top;
}
.tblBlock_address01 td {
	padding: 0 0 30px 0;
	border-top: none;
	vertical-align: top;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.tblBlock_address01 th {
		padding: 20px 0 10px;
		width: 100%;
		display: block;
		font-weight: bold;
		border-top: 1px dashed #ccc;
	}
	.tblBlock_address01 td {
		padding: 0 0 30px 0;
		display: block;
	}
}



.tblBlock_address01 td ul.inputField_row01 li {
	display: inline-block;
	margin-right: 15px;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.tblBlock_address01 td ul.inputField_row01 li {
		display: block;
		margin-bottom: 10px;
		width: 100%;
	}
}

#container .contents .tblBlock_address01 td ul.inputField_row01 li input[type="text"] {
	width: auto;
}
#container .contents .tblBlock_address01 td .inputField_num01 input[type="text"]{
	width: 40%;
}
#container .contents .tblBlock_address01 td ul.inputField_row01 li .item_txt01 {
	margin-right: 10px;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	#container .contents .tblBlock_address01 td ul.inputField_row01 li{
		display: table;
	}
	#container .contents .tblBlock_address01 td ul.inputField_row01 li input[type="text"] {
		width: 100%;
	}
	#container .contents .tblBlock_address01 td ul.inputField_row01 li .item_txt01 {
		display: table-cell;
		width: 14%;
	}
}


#container .contents .tblBlock_address01 td .item_txt02 {
	margin:0 10px;
}

.txt_required01{
	display: inline-block;
	border: 1px solid #c1272d;
	color: #c1272d;
	text-align: center;
	margin-left: 10px;
	padding: 1px 4px;
	font-size: 1.0rem;
	font-weight: bold;
}


/*---------------------------------------------
扉
---------------------------------------------*/
/*amp-*/
#container .contents.wide01{
	width: 100%;
}
#container .contents.wide01 section.bg_gray01{
	padding: 80px 0;
}
#container .contents.wide01 section.bg_gray01 .title_normal01{
	margin: 0 0 50px;
}
#container .contents.wide01 section > .cont_wrap01{
	width: 980px;
	margin: auto;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	#container .contents.wide01{
		padding: 0;
	}
	#container .contents.wide01 section > .cont_wrap01{
		width: 100%;
		padding: 0 20px;
	}
}
/*-amp*/


/*20180910_問い合わせ追加*/
.pagetop {
	display: inline-block;
	width: 130px;
	position: absolute;
	top: -158px;
	right: 78px;
	text-align: center;
	z-index: 999;
}
.pagetop.fixedF {
	position: fixed;
	top: auto;
	bottom: 40px;
	right: 83px;
}
.pagetop a:hover {
	opacity: 0.6;
}
/*-mq-*/
@media screen and (max-width: 979px) {
	.pagetop {
		width: 85px;
		top: -86px;
		right: -1px;
	}
	.pagetop.fixedF {
		bottom: 20px;
		right: 0;
	}
}

.grid_col2{
	margin-top: 30px;
}
.grid_col2 .grid_item{
	float: left;
	width: calc((100% - 30px) / 2);
	margin: 30px 30px 0 0;
}
.grid_col2 .grid_item:nth-of-type(2n){
	margin-right: 0;
	float: right;
}

@media screen and (max-width: 979px) {
	.grid_col2 .grid_item{
		float: none;
		width: 100%;
		margin-right: 0;
	}
	.grid_col2 .grid_item:nth-of-type(2n){
		margin-top: 30px;
		float: none;
	}
}

.grid_col2 .grid_item a{
	padding: 20px;
	display: block;
	text-decoration: none;
}
.grid_col2 .grid_item a .pic01{
	display: block;
	text-align: center;
}
.grid_col2 .grid_item a .pic01 img{
	display: block;
	vertical-align: middle;
	position: relative;
	top: 50%;
	margin: auto;
	transform: translateY(-50%);
}

@media screen and (max-width: 979px) {
	.grid_col2 .grid_item a .pic01 img{
		top: auto;
		margin: auto;
		transform: none;
	}
}

.grid_col2 .grid_item a .text01{
	margin-top: 15px;
	font-size: 2.0rem;
}
.grid_col2 .grid_item a .text01:before{
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
	margin: 0 6px 0 0;
	vertical-align: -2px;
}
/*-amp*/

.link_list02 li{
	margin-bottom: -1px;
}


/*product_list.css*/
#container .contents > section.selectArea{
	margin-bottom: 40px;
}
section.selectArea .selectMenu{
	display: inline-block;
	margin-right: 15px;
	float: left;
	border: 1px solid #ccc;
	border-radius: 3px;
}
section.selectArea .selectMenu > li p{
	position: relative;
	z-index: 2;
	display: block;
	margin: 0;
	padding: 10px 35px 10px 15px;
	background: transparent;
	background-color: #fff;
	line-height: 1.5;
	box-sizing: border-box;
	font-size: 1.4rem;
	min-width: 200px;
}
section.selectArea .selectMenu > li p:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	vertical-align: middle;
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -7px;
}
section.selectArea .selectMenu > li {
	position: relative;
	display: block;
}
section.selectArea .selectMenu > li > ul{
	display: none;
	background: #f2f2f2;
	padding: 0 15px;
	width: 100%;
	box-sizing: border-box;
}
/*-mq-*/
@media screen and (min-width: 769px) {
	section.selectArea .selectMenu > li > ul{
		position: absolute;
		top: 40px;
		left: 0;
		z-index: 10;
	}
}
section.selectArea .selectMenu > li > ul li{
	border-bottom: 1px solid #ccc;
}
section.selectArea .selectMenu > li > ul li:last-of-type{
	border-bottom: 0;
}
section.selectArea .selectMenu > li > ul li a{
	padding: 10px 0;
	display: block;
	text-decoration: none;
}
section.selectArea .selectMenu > li > ul li a:before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 4px;
	border: 0px;
	border-top: solid 1px #c1272d;
	border-right: solid 1px #c1272d;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin: -2px 10px 0 -2px;
}

/*-mq-*/
@media screen and (max-width: 768px) {
	section.selectArea .selectMenu{
		float: none;
		display: block;
		margin-right: 0;
		margin-top: 10px;
		width: 100%;
	}
}

/*amp-*/
#container .contents > section .grid_col3{
	margin-top: 30px;
}
#container .contents > section .grid_col3 .grid_item{
	float: left;
	width: calc((100% - 44px) / 3);
	margin-top: 40px;
	margin-right: 22px;
}
#container .contents > section .grid_col3 .grid_item:nth-of-type(3n){
	margin-right: 0;
}
/*-mq-*/
@media screen and (max-width: 768px) {
	#container .contents > section .grid_col3 .grid_item{
		float: none;
		width: 100%;
		margin-right: 0;
	}
	#container .contents > section .grid_col3 .grid_item:first-of-type{
		margin-top: 0;
	}
}
#container .contents > section .grid_col3 .grid_item a{
	padding: 20px;
	display: block;
	text-decoration: none;
}
#container .contents > section .grid_col3 .grid_item a .newmodel span{
	display: inline-block;
	margin-bottom: 5px;
	padding: 2px 15px 0;
	background-color: #FF0000;
	color:#FFFFFF;
}
#container .contents > section .grid_col3 .grid_item a .modelName{
	display: inline-block;
	border: 1px solid #c1272d;
	padding: 1px 3px;
	color: #c1272d;
	font-size: 1.2rem;
}
#container .contents > section .grid_col3 .grid_item a .productName{
	display: block;
	font-size: 1.9rem;
	font-weight: bold;
	margin: 10px 0 0;
	line-height: 1.4;
}
#container .contents > section .grid_col3 .grid_item a .productName span{
	font-size: 1.4rem;
}
#container .contents > section .grid_col3 .grid_item a .pic01{
	margin: 15px 0 0;
}
#container .contents > section .grid_col3 .grid_item a .pic01 img{
	width: 100%;
}
#container .contents > section .grid_col3 .grid_item a .info{
	margin: 10px 0 0;
	width: 100%;
	table-layout: auto;
	font-size:80%;
}
#container .contents > section .grid_col3 .grid_item a .info th{
	width: 50%;
	padding: 5px 5px 5px 10px;
	white-space: nowrap;
	vertical-align: top;
	background: #4d4d4d;
	color: #fff;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#container .contents > section .grid_col3 .grid_item a .info td{
	padding: 5px 10px;
	vertical-align: top;
	background: #f2f2f2;
	border-bottom: 1px solid #fff;
}
#container .contents > section .grid_col3 .grid_item a .info tr:nth-of-type(even) td{
	background: #e5e5e5;
}


#container .contents > section .grid_col3 .grid_item .select_category{
	margin: 15px 20px 20px 20px;
	padding-left:4em;
	color: #808080;
	font-size:85%;
}
#container .contents > section .grid_col3 .grid_item .select_category li{
	text-indent:-4em;
}
#container .contents > section .grid_col3 .grid_item .select_category li a{
	padding: 0;
	display: inline;
}
#container .contents > section .grid_col3 .grid_item .select_category li span{
	color: #000000;
}
/*-amp*/

/******************************
Cancellation(class被り対策)
*******************************/
header .grid_col3 .grid_item a{
padding: 0px;
padding-left: 17px !important;
}
.global-nav_menu > ul > li > ul > li .categoryMenu .grid_col3 .grid_item > li a.imgbox{
padding: 0px !important;
}
header .grid_col2 .grid_item:nth-of-type(2){
width: calc((100% - 30px) / 2) !important;
}
header .grid_col2 .grid_item{
width: calc((100% - 30px) / 2) !important;
margin-right: 0 !important;
}
@media screen and (max-width:900px) {
  header:after {
    display: none !important;
  }
} 


.point .title-md01 {
  letter-spacing: 15px;
}
section .cont_wrap01 .lead {
  text-align: left !important;
}

.cancel01 {
  background: #fff !important;
  overflow-y: auto !important;
}

.scroll_killer {
  overflow-y: none !important;
  height: auto !important; 
}

.disc_killer {
  list-style: none;
}

/* //Cancellation/

/******************************
multiCSS
*******************************/
/*popアップ用*/
.imgauto {
  width: auto;
  height: auto;
}

.grind_pages_w_item {
  width: 800px;
}

.inner_searchArea {
  padding: 35px;
}

.rel {
  position: relative;
}
.display-none {
  display: none;
}



.btn-items {width: 100%;}
.btn-box {float: right;}
.btn-items a {
  color: #fff;
  text-decoration: none;
  text-shadow: 1px 1px 1px #515152;
  padding: 10px;
  display: block;
}
.btn-red {
  width: 161px;
  height: auto;
  background: #e61b1b;
  text-align: center;
  border-radius: 5px;
  margin-bottom: 10px;
  box-shadow: 1px 1px 1px 1px #99999a;
}
.btn-product {
  width: 161px;
  height: auto;
  background: #2e66a2;
  text-align: center;
  border-radius: 5px;
  margin-bottom: 10px;
  box-shadow: 1px 1px 1px 1px #99999a;
}
.btn-red:hover, .btn-product:hover {
  opacity: 0.7;
}

.btnArea_contract {
  text-align: center;
  background: #f2f2f2;
  padding: 30px;
  margin-top: 30px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.btnArea_contract div {
  width: 200px;
  border-radius: 3px;
  background: #c1272d;
}
.btnArea_contract a {
  display: block;
  padding: 10px 10px 10px;
  background: #c1272d;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  border-radius: 3px;
  text-decoration: none;
}
.btnArea_mg {
  margin-right: 30px;
}
@media screen and (max-width:550px) {
  .btnArea_mg {
    margin-right: 0;
    margin-bottom: 20px;
  }
} 

.flex-items01 {
  width: auto;
  min-width: 200px;
}
.flex-2crm-l {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.flex-2crm-m {
  display: flex;
}

.link-blue {
  color: #2e66a2;
  text-decoration: none;
}
.link-blue:hover {
  text-decoration: underline;
}
.link-black {
  color: #000;
  text-decoration: none;
}
.link-black:hover {
  text-decoration: underline;
}
.on_location {
  pointer-events: none;
  color: #c1272d !important;
}

.dflex-wrap .dflex-wrap-img img {
  width: 100%;
  height: auto;
}
.btn-send01 {
  width: 70px !important;
  height: 15px !important;
  border: none !important;
}
@media screen and (min-width:851px) {
  .dflex-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .dflex-wrap .dflex-wrap-child {
    width: 46%;
  }
  .dflex-wrap .dflex-wrap-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .dflex-wrap .dflex-wrap-img {
    width: 48%;
  }
  .dflex-wrap .dflex-wrap-des {
    width: 48%;
  }
}
@media screen and (max-width:768px) {
  .flex-items01 {
    margin: 0 auto;
  }
  .flex-2crm-l {
    display: block;
  }
  .flex-2crm-m {
    display: block;
  }
  .ulw590 {
    width: 100%;
  }
  .ulw500 {
    width: 100%;
  }
  .text_box48p {
    width: 100%;
  }
} 
@media (max-width:850px) and (min-width:501px){
  .dflex-wrap .dflex-wrap-child {
    width: 100%;
  }
  .dflex-wrap .dflex-wrap-item {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .dflex-wrap .dflex-wrap-img {
    width: 48%;
  }
  .dflex-wrap .dflex-wrap-des {
    width: 48%;
  }
}
@media screen and (max-width:500px) {
  .dflex-wrap .dflex-wrap-child {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
  }
  .dflex-wrap .dflex-wrap-img,
    .dflex-wrap .dflex-wrap-des {
    width: 100%;
  }
}


/* //end  multiCSS*/


.sp_hexagon {
  position: relative;
  z-index: -1;
}
.sp_hexagon span:after {
  content: "";
  display: inline-block !important;
  width: 140px;
  height: 174px;
  background: url(../images/top/parts_hexagon01.png) no-repeat 0 0;
  position: absolute;
  bottom: -200px;
  right: 4%;
}

/******************************
checkbox
*******************************/
.checkbox_wap {
  border-bottom: 1px dashed #ccc;
  margin-bottom: 20px;
}

.checkbox_wap ul {
  margin: 10px 0 ;
  display: flex;
  flex-wrap: wrap;
}
.checkbox_wap ul li {
  display: block;
  width: auto;
  margin-right: 40px;
}
.checkbox_input input {
  margin: 20px auto;
}
.checkbox_input textarea {
  margin: 20px auto;
}
@media screen and (max-width:550px) {
  .checkbox_wap ul {
    margin: 0;
  }
  .checkbox_wap ul li {
    min-width: 111px;
    margin-right: 0;
  }
} 

.cs_thank {
  text-align: center;
  padding: 50px;
  font-size: 2.5rem;
} 

.cs_thank a {
  display: inline-block;
  min-width: 200px;
  background: #c1272d;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 10px 10px 10px;
  color: #fff;
  border-radius: 3px;
  text-align: center;text-decoration-line: none;
}

/* //end  checkbox*/

/******************************
tableCSS
*******************************/
.table_space {
  padding: 10px 0px 0px 60px;
}
.table_space02 {
  margin:0px 0px 0px 25px;
}

.training-s th,
.training th {
  border-bottom:1px solid #aaa5a3;
  border-right:1px solid #aaa5a3;
  vertical-align:middle;
  padding: 5px;
}


.contract_tdw {
  width: 97%;
  margin: 0 auto;
}
@media screen and (max-width:1214px) {
	.table-responsive2 {
		overflow-x: scroll;
	}
	.table-responsive2 > table {
		width: 910px;
	}
} 

.table-responsive {
  width: 100%;
  height: auto;
}

.tbw800 {
  width: 800px;
  margin: 0 auto;
}
.tbw980 {
  width: 900px;
  margin: 0 auto;
}
.ulw500 {
  width: 500px;
}
.ulw590 {
  width: 590px;
}
.tdw100 {
  width: 100px;
}
.tdw300 {
  width: 300px;
  background: #eae9e9;
}
@media screen and (max-width:900px) {
  .table-responsive {
    overflow-x: scroll;
  }
} 

.table_oft01 {
  width: auto !important;
}
.table_oftw497 {
  width: 497px;
}
.table_oftw150 {
  width: 150px;
}
.table_oft_title {
  background: #333;
  color: #fff;
  border: 1px #fff solid;
  border-bottom: 0;
}
.table_oft01 td {
  padding: 15px;
}

.tblw600 {
  width: 600px;
}
.table_oft02 {
  width: 798px;
  margin: 0 auto;
}

.table_oft02 tr:nth-child(odd) {
  background: #eeeeee;
}
.table_oft02 td {
  padding: 8px;
  line-height: 2;
}
.table_oft02 td ul {
  margin-top: 0 !important;
}
@media screen and (max-width:550px) {
  .tblw600 {
    width: auto;
  }
} 

 
.mg_text01 {
  margin: 0 5px 0 0 !important;
}
.top_dashed {
  border-top: none !important;
}
.flex_box01 {
  display: flex;
  justify-content: space-between;
}
.flex_box02 {
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.flex_box02 p {
  margin: 0 5px; 
}

@media screen and (max-width:550px) {
  .top_dashed {
    border-top: 1px dashed #ccc !important;
  }
  .flex_box01 {
    display: block;
    justify-content: space-around;
  }
} 

.tblBlock_no {
  display: none;
  color: #c1272d;
  margin-right: 5px;
}
.tblBlock_text {
  font-weight: bold;
}
.tblBlock_text tr {
  justify-content: stretch !important;
  align-items: center;
  align-items: center;
  margin-bottom: 0;
}
.tblBlock_text p {
  padding: 20px 0 10px;
  font-weight: bold;
}
.tb_control_w169 {
  width: 169px;
}
.tb_control_w111 {
  width: 111px;
}
.tblBlock_registration tbody {
  width: 100%;
}
.tblBlock_registration tr {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-bottom: 20px;
}
.tblBlock_registration select {
  border: 1px solid #ccc;
  height: 43px;
  width: 100%;
  border-radius: 3px !important;
}
@media screen and (max-width:767px) {
  .tblBlock_no {
    display: inline-block;
  }
  .tblBlock_registration tr {
    display: inline-grid;
    justify-content: stretch;
    width: 100%;
    border-bottom: 1px dashed #ccc;
    padding: 0 0 18px;
    margin-bottom: 10px;
  }
  .tblBlock_registration tr td {
    margin-bottom: 10px;
  }
  .tblBlock_text p {    
    padding: 0 0 10px;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    margin-bottom: 0;
  }
  .tb_control_w169 {
    width: auto;
  }
  .tb_control_w111 {
    width: auto;
  }
  .tblBlock_registration select {
    width: 94%;
  }
  .tblBlock_registration input {
    width: 94% !important;
  }
} 

.tblBlock_2column {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.tblBlock_2column th {
  padding: 8px 10px 30px 0;
  text-align: left;
  width: 150px;
  vertical-align: top;
}  
.tblBlock_2column td {
  padding: 0 0 30px 0;
  border-top: none;
  vertical-align: top;
}

@media screen and (max-width:720px) {
  .tblBlock_2column {
    display: inline-table;
    flex-wrap: nowrap;
    justify-content: normal;
  }
  .tblBlock_2column th {
    padding: 20px 0 10px;
    width: 100%;
    display: block;
    font-weight: bold;
    border-top: 1px dashed #ccc;
  } 
  .tblBlock_2column td {
    padding: 0 0 30px 0;
    display: block;
  } 
} 

.pro_title {
  color: #c1272d;
  font-weight: bold;
  margin: 5px auto;
  border-bottom: 1px solid #ccc;
  border-left: 2px solid #C12733;
  padding: 5px 10px;
}
.td-left {
 width: 30%;
}
.tb-right {
 width: 70%;
}
#productsInfo {
  padding: 5px;
}
#productsInfo table tr td {
  padding: 5px;
  border: 1px #cccccc solid;
}
#productsInfo input {
  border: 1px solid #ccc;
  border-radius: 5px;
}

.training {
  border-left: 4px solid #e71f19;
  border-top: 1px solid #aaa5a3;
}
.training-s {
  border-left: 4px solid #e71f19;
  border-top: 1px solid #aaa5a3;
}
.training td {
  border-bottom: 1px solid #aaa5a3;
  border-right: 1px solid #aaa5a3;
  vertical-align: middle;
  padding: 5px;
}
.training-s td {
  border-bottom: 1px solid #aaa5a3;
  border-right: 1px solid #aaa5a3;
  vertical-align: top;
  padding: 5px;
}

.training a {
  color: #2e66a2;
  text-decoration: none;
}
.training a:hover {
  text-decoration: underline;
}
.ehd {
  background-color: #efeeed;
  text-align: center;
}
.ect {
  background-color: #ffffff;
  text-align: left;
}

.table02 td {
  vertical-align: top;
}

.t-detail td {
  vertical-align: middle;
}
.nr_list3 {
  width: 110px;
  font-weight: bold;
  color: #333366;
  padding-top: 3px;
  padding-right: 10px;
  padding-bottom: 3px;
  padding-left: 15px;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: #CCCCCC;
}
.nr_list2 {
  padding-top: 3px;
  padding-right: 10px;
  padding-bottom: 3px;
  padding-left: 5px;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: #CCCCCC;
}
.orange_back {
  color: #FFFFFF;
  background-color: #E3990F;
  font-weight: bold;
}
.glay_back {
  color: #FFFFFF;
  background-color: #999999;
  font-weight: bold;
}
.tc_exp {
  text-align: center;
}

.table03 {
  font-size:120%;
  font-weight:bold;
  text-align:center;
}
.end_line01 {
  margin: 40px 0 30px;
  padding: 0 10px 10px;
  border-bottom: 1px solid #ddd;
  position: relative;
}
.end_line01:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: 1px solid #c1272d;
  bottom: -1px;
  width: 80px;
  right: 0;
}
.table03 td {
  padding: 10px;
  border: 1px #cccccc solid;
  text-align: center;
}    
@media screen and (max-width:550px) {
   .table03 tr {
    display: grid;
  } 
  .tdw300,.tdw100 {
    width: 100%;
  }
} 
/* //end  tableCSS*/

/******************************
partsCSS-texts
*******************************/

/*title追加*/
.title-xl01{
  font-size: 2.8rem;
  font-weight: normal;
}

.text-parts01 {
  padding: 20px 0 0;
}
.text-parts01 h3 {
  color: #C1272D;
}
.text-parts-item01 {
  font-weight: bold;
}
.text-parts02 {
  box-shadow: 0px 0px 2px 1px #ccc;
  padding: 10px;
  margin-bottom: 30px;
}

.title-lg02{
  font-size: 2.0rem;
  font-weight: bold;
  color: #c1282d;
}

.text-parts03 {
  background: #eee;
}
.text-parts03 h4 {
  border-bottom: 1px solid #ccc;
  border-left: 2px solid #C12733;
  padding: 5px 10px;
  background: #fff;
}
.text-parts03 ul {
  list-style: initial;
  list-style-position: inside;
  margin: 10px;
}
.text-parts03 p {
  margin-bottom: 30px;
}

.text_size13 {
  font-size: 13px;
}
.text_box48p {
  width: 48%;
}
.fs_lar02 {
  font-size: 2rem !important;
}
.title-page02 {
  font-size: 3rem;
  font-weight: normal;
}

.title-sm02{
  font-size: 1.6rem;
  font-weight: bold;
}
.title-page03 {
  font-size: 4rem;
  font-weight: normal;
}

/* //end  partsCSS-texts */

/******************************
partsCSS-date_box
*******************************/
.date_box {
  text-align: right;
}
.date_box .date {
  font-weight: bold;
  letter-spacing: 1px;
}
/* //end  date_box*/

/******************************
partsCSS-btns
*******************************/
.list_btn {
  text-align: center;
}
/* //end  originals*/

/******************************
partsCSS-originals
*******************************/
.map-btn {
  background: #ccc;
}
.venue-btn {
  background: #fff;
}
.map-btn a, .venue-btn a {
  text-decoration: none;
  display: block;
  font-weight: bold;
  padding: 12px;
  text-align: center;
} 
.links-box01 {
  text-align: right;
}
.products-list-itemlink .products-list-des ul li {
  list-style: disc;
  list-style-position: inside;
  padding-left: 2rem;
  text-indent: -2rem;
}
.products-list-itemlink .products-list-des ul a {
  font-size: 12px;
}
.products-list-itemlink span{
  padding-left: 5px;
}
.title-box01 {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* //end  originals*/

/******************************
partsCSS-arrows
*******************************/
.arrow-type01{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin-right: 5px;
}
.arrow-type01::before{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 13px;
  height: 13px;
  border: 1px solid #ff0000;
  -webkit-border-radius: 25%;
  border-radius: 25%;
}
.arrow-type01::after{
  position: absolute;
  top: -6px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 4px;
  box-sizing: border-box;
  width: 5px;
  height: 9px;
  border: 4px solid transparent;
  border-left: 5px solid #ff0000;
}

.arrow-type01_l{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin-right: 5px;
  font-weight: bold;
}
.arrow-type01_l::before{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: -6px;
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 17px;
  height: 17px;
  border: 1px solid #ff0000;
  -webkit-border-radius: 25%;
  border-radius: 25%;
}
.arrow-type01_l::after{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0px;
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 9px;
  height: 9px;
  border: 5px solid transparent;
  border-left: 7px solid #ff0000;
}

.arrow-type02{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin-right: 5px;
}
.arrow-type02::before{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 13px;
  height: 13px;
  -webkit-border-radius: 25%;
  border-radius: 25%;
}
.arrow-type02::after{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 4px;
  box-sizing: border-box;
  width: 5px;
  height: 9px;
  border: 7px solid transparent;
  border-left: 9px solid #c1282d;
}
.arrow-type02:hover{
  color: #c1282d;
  text-decoration: underline;
}

.arrow-type03{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin-right: 5px;
}
.arrow-type03::before{
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  box-sizing: border-box;
  width: 13px;
  height: 13px;
  -webkit-border-radius: 25%;
  border-radius: 25%;
}
.arrow-type03::after{
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 2px;
  box-sizing: border-box;
  width: 5px;
  height: 9px;
  border: 4px solid transparent;
  border-left: 5px solid #ff0000;
  transform: rotateZ( 90deg );
}
.arrow-type03:hover{
  color: #c1282d;
  text-decoration: underline;
}
@media screen and (max-width:768px) {
  .links-box01 {
    text-align: center;
  }
  .arrow-type02 {
    margin-right: 14px;
    margin-bottom: 20px;
  }
} 
/* //end  arrows*/

/******************************
partsCSS-list-arrow ul
*******************************/
.list-Arrow {
  margin: 15px 0px 15px 0px;
  list-style-position: outside;
  padding-left: 20px;
  list-style: inside disc;
}
.list-Arrow li {
  list-style-image: url(../images/common/point_g.gif);
}
/* //end  list-arrow*/

/******************************
partsCSS-pw_parts
*******************************/
.pw_parts a img {
  width: 18px;
}

.pw_parts_th {
  font-size: 2.0rem;
  width: 120px !important;
}
.pw_parts_td {
  font-size: 2.0rem;
  width: 160px !important;
}

/* //end  pw_parts/

/******************************
 partsCSS-link_list03
 *******************************/
.link_list03 .link_list03_child {
  width: calc((100% - 40px) / 3);
  margin-bottom: 20px;
  margin-right: 20px;
  float: left;
  display: inline-block;
}

.link_list03 div {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

.link_list03 .link_list03_child:nth-of-type(3n){
  margin-right: 0px;
}

.link_list03 li a {
  padding: 20px;
  position: relative;
  display: block;
  text-decoration: none;
  font-size: 120%;
}
.link_list03 li a:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
  margin: 0 6px 0 0;
  vertical-align: -2px;
}
/*-mq-*/
@media screen and (max-width: 768px) {
  .link_list03 .link_list03_child{
    width: 100%;
    display: block;
    margin-right: 0px;
    margin-bottom: 0px;
    float: none;
  }
}
/* // pageCSS-ofc_link_list*/

/******************************
 partsCSS-link_list04
 *******************************/
.link_list04 li{
  width: calc((97% - 40px) / 2);
  display: inline-block;
  margin-right: 7%;
  float: left;
  font-size: 120%;
}
.link_list04 div {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 20px;
}
.link_list04 li:nth-of-type(2n){
  margin-right: 0px;
}
.link_list04 li a{
  padding: 20px;
  position: relative;
  display: block;
  text-decoration: none;
}
.link_list04 li a:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
  margin: 0 6px 0 0;
  vertical-align: -2px;
}
/*-mq-*/
@media screen and (max-width: 768px) {
  .link_list04 li{
    width: 100%;
    display: block;
    margin-right: 0px;
    float: none;
  }
  .link_list04 div {
    margin-bottom: 0px;
    border-bottom: 0;
  }
  .link_list04 li:last-of-type{
    border-bottom: 1px solid #cccccc;
  }
}

/* // pageCSS-ofc_link_list*/

/******************************
 partsCSS-tab
 *******************************/
.tab_box {
  position: absolute;
  top: -48px;
  width: 78%;
}
.tab_location {
  position: relative;
  background: #fff;
  border: none !important;
  box-shadow: 0px 10px 0px #fff, 0px 0px 10px rgba(0,0,0,0.3);
  padding-bottom: 3px;
}
.link_list05 li{
  border-radius: 5px 5px 0 0;
  width: calc((100% - 40px) / 3);
  display: inline-block;
  margin-right: 20px;
  float: left;
  border: 1px solid #cccccc;
  border-bottom: none;
}
.link_list05 li:nth-of-type(4n){
  margin-right: 0px;
}
.link_list05 li a{
  padding: 12px;
  position: relative;
  display: block;
  text-decoration: none;
}
.link_list05 li a:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
  margin: 0 6px 0 0;
  vertical-align: -2px;
}
/*-mq-*/
@media screen and (max-width: 767px) {
  .tab_box {
    position: relative;
    top: 0;
    width: 100%;
    padding: 0 1px;
  }
  .tab_location {
    position: relative;
    background: none;
    border: 1px solid #ccc!important;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.2) !important;
    padding-bottom: 0;
  }
  .link_list05 li{
    width: 100%;
    display: block;
    margin-right: 0px;
    margin-bottom: 0px;
    float: none;
    border-bottom: 0;
    border-radius: 0;
    border: none;
  }
}
 /* // pageCSS-tab*/

/******************************
 partsCSS-ofc_link_list
 *******************************/
.oft_link_list01 {
  text-align:  right;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.oft_link_list01 li {
  margin-right: 20px;
}
.oft_link_list01 li a {
  position: relative;
  display: block;
  text-decoration: none;
}
.oft_link_list01 li a:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
  margin: 0 6px 0 0;
  vertical-align: -2px;
}
@media screen and (max-width: 768px) {
  .oft_link_list01 {
    text-align:  center;
    margin-top: 30px;
    justify-content: space-between;
  }
  .oft_link_list01 li {
    margin: 20px 20px 0 0;
  }
}
/* // pageCSS-ofc_link_list*/

/******************************
 partsCSS-products_link_list
 *******************************/
.prod_link_list01 {
  text-align:  right;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.prod_link_list01 li {
  margin-right: 20px;
}
.prod_link_list01 li a {
  position: relative;
  display: block;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .prod_link_list01 {
    text-align:  center;
    margin-top: 30px;
    justify-content: space-around;
  }
  .prod_link_list01 li {
    margin: 20px 20px 0 0;
  }
}
/* // pageCSS-ofc_link_list*/

/******************************
 pageCSS-products-list
 *******************************/
.products-list-wap {
  display: flex;
  flex-wrap: wrap;
}
.products-list-wap .title_line01 {
  margin: 0;
}
/*.products-list-item {
  width: 100%;
  margin: 1em 1.3%;
  max-width: 30.7%;
  min-width: 250px;
  background-color: #fff;
  padding: 5px;
  box-shadow: 0px 2px 1px 1px #ccc;
}*/
.products-list-img {
  text-align: center;
  padding: 20px 0 0;
}
.products-list-link a {
  display: block;
  width: 134px;
  height: 28px;
  white-space: nowrap;
  margin: 20px auto 17px;
  text-decoration: none;
  text-align: center;
}
.products-list-link a p {
  font-size: 1.5rem;
}

.products-list-link a p:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
  margin: 0 6px 0 0;
  vertical-align: -2px;
}

.products-list-link02 a {
  display: block;
  width: 134px;
  height: 28px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  margin: 20px auto 17px;
  background: url(../images/common/btn_patern01.gif) 0 0 no-repeat;
}
.products-list-des ul {
  list-style: disc;
  list-style-position: inside;
  width: 85%;
  margin: 10px auto;
}
.products-list-des ul li {
  list-style: disc;
  list-style-position: inside;
  padding-left: 1rem;text-indent: -2rem;
}
.products-list-itemlink ul {
  margin: 10px;
}
.products-list-itemlink ul li a {
  color: #000;
  text-decoration: none;
}
.products-list-itemlink ul li a:hover{
  color: #000;
  text-decoration: underline;
}  

@media (max-width:850px) and (min-width:501px){
  .products-list-wap {
    justify-content: space-between;
  }
  .products-list-item {
    width: 49%;
    max-width: none;margin: 0 0 20px;
  }
}
@media screen and (max-width:500px) {
  .products-list-item {
    width: 85%;
    margin: 1.3% auto;
    max-width: none;
  }
} 
/* //end  products-list*/

/******************************
 pageCSS-products-list-child
 *******************************/
.products-list-child .title_line01 {
  margin: 40px 0 0;
}
.products-list-child
.products-list-main {
  padding-bottom: 25px;
  background: #f5f5f5;
} 
.products-list-child .products-list-main
.products-list-item {
  max-width: none;
  display: flex;
  align-items: center;
  box-shadow: none;
  margin: 0;
  padding: 0;
  background: #f5f5f5;
}
.products-list-child .products-list-img {
  width: 46%;
  height: auto;
}
.products-list-child .products-item-child {
  width: 52%;
  padding: 1%;
}
.products-list-child
.products-list-des ul {
  width: 95%;
}

.products-list-child .products-list-wap {
  justify-content: space-between;
}
.products-list-child .products-list-wap
.products-list-flex {
  position: relative;
  width: 46%;
  padding-bottom: 30px;
  border-bottom: 1px solid #ddd;
}
.products-list-child .products-list-wap
.products-list-item {
  width: 100%;margin: 3% auto 0;
  max-width: none;
  box-shadow: none;
  display: flex;
}
.products-list-child .products-list-wap 
.products-list-img {
  padding: 20px 0 30px;
}
.products-list-child .products-list-wap 
.products-list-link {
  position: absolute;
  bottom: 0;
}
@media (max-width:850px) and (min-width:501px){
  .products-list-child .products-list-main
  .products-list-item {
    width: 100%;
    display: block;
    margin: 5% auto 0;
  }
  .products-list-child .products-list-img {
    width: 100%;
    height: auto;
    text-align: center;
  }
  .products-list-child .products-item-child {
    width: 74%;
    padding: 1%;
    margin: 0 auto;
  }
  .products-list-child .products-list-wap
  .products-list-flex {
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
  .products-list-child .products-list-wap 
  .products-list-img {
    width: 27%;
    height: auto;
    text-align: center;
    padding: 0px 0px 30px;
  }
  .products-list-child .products-list-wap 
  .products-list-link a {
    margin: 20px 0 15px;
  }
}
@media screen and (max-width:500px) {
  .products-list-child .products-list-main{
    padding: 25px;
  }
  .products-list-child .products-list-main
  .products-list-item {
    width: 100%;
    display: block;
  }
  .products-list-child .products-list-img {
    width: 100%;
    height: auto;
    text-align: center;
  }
  .products-list-child .products-list-main
  .products-item-child {
    width: 98%;
    padding: 1%;
    margin: 0 auto;
  }
  .products-list-child .products-list-wap 
  .products-item-child {
    width: 52%;
    padding: 1%;
    margin: 0 auto;
  }
  .products-list-child  .products-list-wap
  .products-list-flex {
    width: 100%;
  }
  .products-list-child  .products-list-wap
  .products-list-flex {
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
  .products-list-child .products-list-wap 
  .products-list-img {
    width: 27%;
    height: auto;
    text-align: center;
    padding: 0px 0px 30px;
  }
  .products-list-child .products-list-wap 
  .products-list-link a {
    margin: 20px 0 10px;
  }
} 
/* //end  products-list-child*/

/******************************
 pageCSS-news-sab
 *******************************/
.news_list01_right {
  width: 90%;
}
.news_list01 h3 {
  float: left;
  clear: both;
  max-width: 110px;
  padding: 0 15px 10px 0;
  box-sizing: border-box;
  color: rgba(0,0,0,0.5);
}
.news_list01 p {
  padding: 0 0 10px 15px;
}
.contScroll_h01 .news_list01 li {
  margin-bottom: 0;
  display: flex;
}
.news-sab .news_list01 p {
  width: 155px;
  max-width: 150px;
  color: #000;
  font-weight: bold;
}
.news-sab .news_list01 li {
  border-bottom: 1px dashed #000;
  margin-bottom: 10px;
  display: flex;
}
.news-sab .news_list01 li div {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.news-sab .news_list01 li div p {
  width: auto !important;
  max-width: 100% !important;
  color: #000;
  font-weight: normal !important;
  padding: 0 0 10px 15px;
}
.news-sab .text {
  width: 89%;
}
.news-sab .text a {
  font-size: 17px;
  color: #2e66a2;
  text-decoration: none;
}
.news-sab .text a:hover {
  text-decoration: underline;
}
.news-sab .more {
  width: 70px;
}
.news-sab .more a {
  font-size: 17px;
  color: #C1272D;
  text-decoration: none;
  position: relative;
  padding-left: 15px;
}
.news-sab .more a:before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border: 0px;
  border-top: solid 1px #c1272d;
  border-right: solid 1px #c1272d;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  margin: 0;
  position: absolute;
  left: 0;
  top: 5px;
}
.news-sab .more a:hover {
  text-decoration: underline;
}
.news-sab .support_news li {
  border-bottom: 1px dashed #000;
}
@media screen and (max-width:768px) {
  .news_list01_right {
    width: 100%;
  }
  .contScroll_h01 .news_list01 li {
    display: block;
  }
  .news-sab .news_list01 li {
    display: block;
  }   
  .news-sab .news_list01 li div {
    justify-content: normal;
    display: grid;
  }
  .news-sab .more {
    text-align: right;
  }
} 
/* //end  news-sab*/


/******************************
 pageCSS-download
 *******************************/
.dlArea {

}
.dlArea .tabArea {

}
.dlArea .tabArea ul {
  margin-left: 15px;
}
.dlArea .tabArea ul li {
  float: left;
  display: inline;
}
.dlArea .tabArea ul li a {
  display: block;
  width: 173px;
  height: 32px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  margin-right: 12px;
}

.dlArea .tabArea ul li.active a,
.dlArea .tabArea ul li a:hover {
  background-position: 0 -42px;
}
.dlArea .box {
  width: 710px;
  margin-top: 0;
  padding-top: 10px;
}
.dlArea .boxBtm {
  padding-bottom: 5px;
}
.dlArea .boxInner {
}
/*IE6*/
* html .dlArea .boxBtm {
  padding-bottom: 0;
}
/*IE6*/
* html .dlArea .boxInner {
  padding-bottom: 5px;
}
.dlArea .searchArea {
  width: 660px;
  margin: 0 15px 20px 35px;
  padding: 10px 0 20px;
  border-bottom: 1px #808080 dotted;
}
/*IE6*/
* html .dlArea .searchArea {
  margin: 0 33px 10px;
}
.dlArea .searchArea p {
  float: left;
  width: 115px;
  font-size: 120%;
  font-weight: bold;
  padding: 5px 0 0 0;
}
/* 1407ダウンロードラジオボタン */
.seihin-title {
  width: 570px !important;
  color: #C1272D;
}
.font80_normal   {
  font-size: 80% !important;
  font-weight: normal;
}
#seihin-cat-radio {
  line-height: 2em;
}
#seihin-name-radio {
  line-height: 2em;
}
ul.seihin-selectarea {
  margin:0; 
  padding:0;
}
ul.seihin-selectarea li {
  margin:0;
  padding:0;
  float:left;
  display:inline-block;
  margin-right:1.5em;
}
.dlArea .searchArea input.searchClearBtn {
  border: none;
  margin-top: 10px;
  margin-left: 506px;
  width: 85px;
  height: 22px;
  text-indent: 120%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}
p.addText {
  float: none !important;
  width: 500px !important;
  font-size: 100% !important;
  color: #C1272D;
  font-weight: bold;
  margin: 5px 0 0 115px;
}
.dlArea .searchArea input.searchBox {
  display: inline;
  width: 385px;
  height: 22px;
  border: 1px #332e2b solid;
}
.dlArea .searchArea input.searchBtn {
  border: none;
  width: 85px;
  height: 22px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

.dlArea .searchArea.btmEnd {
  margin: 0 35px 0;
  border-bottom: none;
}
.dlArea .searchArea select {
  text-align: center;
}
/*IE6*/
* html .dlArea .searchArea select {
  font-size: 11px;
}
.dlArea .searchArea select.centerBox {
  margin: 0 40px;
}
/*IE6*/
* html .dlArea .searchArea select.centerBox {
  margin: 0 5px;
}
.dlArea .dlflow { margin-left: 18px; }
.dlArea .adobePdf {
  width: 540px;
  padding: 25px 0 30px 85px;
}
.dlArea .adobePdf img {
  float: left;
}
.dlArea .adobePdf p {
  float: right;
  width: 360px;
  line-height: 1.3;
}
.dlArea ul.ulDl {
  padding: 0 0 30px 55px;
}
.dlArea ul.ulDl li {
  zoom:1;
}
.dlArea ul.ulDl li.all {
  margin-bottom: 15px;
}
.dlArea ul.ulDl li .btnArea590 {
  color: #333333;
  width: 100%;
  height: 32px;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  border-bottom: 1px #000000 dashed;
  cursor: pointer;
}
.dlArea ul.ulDl li .btnArea590.pdfBg {
  background: url(../images/common/pdficon_large.png) right 22px no-repeat;
}
.dlArea ul.ulDl li .btnArea590 a {
  display: block;
  height: 100%;
  width: 100%;
  padding-bottom: 16px;
  text-decoration: none;
}
/*IE6*/
* html .dlArea ul.ulDl li .btnArea590 a {
  padding-bottom: 0;
}
.dlArea ul.ulDl li .btnArea590:hover {
  color: #c1272d;
}
.dlArea ul.ulDl li .btnArea590 a span {
  line-height: 3.5;
  padding: 0 0 0 25px;
}
.dlArea ul.ulDl li .btnArea590 p.p01 {
  float: left;
  width: 140px;
  color: #c1272d;
  position: absolute;
  top: 7px;
  left: 0;
  padding-left: 12px;
  background: url(../images/common/ttl_line.gif) left 5px no-repeat;
}
.dlArea ul.ulDl li .btnArea590 p.p01.pdfBg {
}
.dlArea ul.ulDl li .btnArea590 p.p01 span.pdfBg {
  padding-right: 30px;
  background: url(../images/common/pdficon_large.png) right center no-repeat;
}
.dlArea ul.ulDl li .btnArea590 p.p02 {
  float: left;
  position: absolute;
}
/*IE6*/
* html .dlArea ul.ulDl li .btnArea590 p.p02 {
  bottom: 2px;left: 135px;
  line-height: 1.2;
}
/*IE7*/
*:first-child+html .dlArea ul.ulDl li .btnArea590 p.p02 {
  bottom: 2px;left: 135px;
  line-height: 1.2;
}
.dlArea ul.ulDl li .btnArea590 p.p01.pdfBg02 span {
  padding-right: 30px;
  background: url(../images/common/pdficon_large.png) right bottom no-repeat;
}
.dlArea ul.ulDl li .btnArea590 p.p03 {
  float: right;
  color: #333333;
  font-size: 13px;
  font-weight: normal;
  text-align: right;
  position: absolute;
  top: 11px;right: 5px;
}
/*IE6*/
* html .dlArea ul.ulDl li .btnArea590 p.p02,
* html .dlArea ul.ulDl li .btnArea590 p.p03 {
  padding: 2px 0;
}
/* 右端にPDFアイコン */
.dlArea ul.ulDl li .btnArea590 p.p01r {
  float: left;
  width: 110px;
  color: #c1272d;
  position: absolute;
  top: 10px;left: 0;
  padding-left: 12px;
}
.dlArea ul.ulDl li .btnArea590 p.p02r {
  float: left;
  position: absolute;
  bottom: 5px;left: 115px;
}
/*IE6*/
* html .dlArea ul.ulDl li .btnArea590 p.p02r {
  bottom: 2px;left: 115px;
}
/*IE6*/
* html .dlArea ul.ulDl li .btnArea590 p.p02r {
  padding: 2px 0;
}
/*IE6*/
* html .dlArea ul.ulDl a {
}
/*IE6*/
* html .dlArea ul.ulDl a:hover {
  color: #c1272d;
  text-decoration: none;
}
ul.downloadList {
  margin: 15px 0 0 7px;
}
ul.downloadList li {
  font-size: 120%;
  line-height: 1.4;
}
ul.downloadList02 {
  margin: 15px 0 30px 37px;
}
ul.downloadList02 li {
  font-size: 120%;
  line-height: 1.4;
}
.pdfCenter {
  left: 50%;
  transform: translateX(-50%);
  bottom: 3px;
}
.download-pdf {
  display: flex;
  width: 72%;
  align-items: center;
  margin: 0 auto;
  justify-content: space-between;
}
.download-pdf-img {
  min-width: 158px;
}
.download-pdf p {
  width: 68%;
  line-height: 1.3;
}
.download .contScroll_h01 {
  overflow-y: auto;;
  -webkit-overflow-scrolling: touch;
  position: relative;
  height: auto;
  padding: 20px;
  background: #f2f2f2;
  box-sizing: border-box;
}
@media screen and (max-width:768px) {
  .dlArea ul.ulDl li .btnArea590 {
    height: auto;
  }
  .dlArea ul.ulDl li .btnArea590 p.p01 {
    float: none;
    position: relative;
    top: 0;
    left: 0;
  }
  .dlArea ul.ulDl li .btnArea590 p.p02 {
    float: none;
    position: relative;
    bottom: 0;
    left: 0;
  }
  .pdfCenter {
    left: 0;
    transform: translateX(0);
    bottom:0;
  }
  .dlArea ul.ulDl li .btnArea590 p.p03 {
    float: none;
    position: relative;
    top: 0;
    right: 0;
  }
  .download-pdf {
    display: block;
    width: 100%;
  }
  .download-pdf p {
    width: 100%;
    line-height: 1.3;
  }
} 
/* //end  download*/

/******************************
product description
*******************************/
.title_simpleline {
  border-bottom: 1px solid #ddd;
  margin-bottom: 1rem;
}
@media screen and (min-width:768px) {
  .eyecatch  {
    margin: 0 0 1rem 4rem;
  }
}
@media screen and (max-width:767px) {
  .eyecatch  {
    text-align: center;
    margin: 0 auto 1rem;
  }
}
/******************************
 partsCSS-ofc_link_list
 *******************************/
.oft_link_list01 li a:before {
  height: 16px !important;
}

/* input type="pasword" のみ */
#container form input[type="password"] {
  property: value;
  border: 1px solid #ccc;
  padding: 10px 10px;
  resize: vertical;
  width: 100%;
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  /* 2 */
  box-sizing: border-box;
  resize: vertical;
  font-size: 1.4rem;
  border-radius: 3px;
}
/******************************
 partsCSS-search_results
 *******************************/
.search_text {
  font-size: 2.0rem;
  color: #c1272d;
  line-height: 1.4;
}

.search_results {
  margin: 0 0 20px;
  padding: 0;
  background: #fff;
  position: relative;
  z-index: 2;
}
.search_results form button {
  width: 30px !important;
  height: 30px !important;
  position: absolute !important;
  right: 15px !important;
  top: 13px !important;
  padding: 0 !important;
  background: url(../images/common/icon_search01.png) no-repeat center !important;
  background-size: 29px !important;
  border-radius: 3px !important;
  border: none !important;
  text-indent: -99999px !important;
}
.search_results form input {
  font-size: 2.3rem !important;
  color: #767676 !important;
  padding: 10px 10px !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.search_hit, .search_none {
  padding-bottom: 8px;
  margin-bottom: 20px;
  border-bottom: 2px solid #e6e6e6;
}
.search_hit p {
  color: #666666;
  font-size: 2.3rem;
  font-family: YakuHanJP, "Hiragino Sans", Meiryo, "Yu Gothic Medium", sans-serif;
  line-height: 1 !important;
}
.search_none p {
  color: #666666;
  font-size: 2.0rem;
  font-family: YakuHanJP, "Hiragino Sans", Meiryo, "Yu Gothic Medium", sans-serif;
  line-height: 1 !important;
}

.results ul li {
  margin-bottom: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.results a {
  font-size: 2.0rem;
}

.search_pager {
  padding-top: 30px;
  text-align: center;
  border-top: 2px solid #e6e6e6;
}
.search_pager a {
  font-size: 1.8rem;
  text-decoration: none;
  margin: 0 1.5%;
}
.search_pager a:hover {
  font-size: 1.8rem;
  text-decoration: underline;
}
.pager_active a {
  color: #c1272d !important;
}

/******************************
machine.html
*******************************/

#container .contents.wide01 section > .cont_wrap02{
  width: 100%;
  max-width: 960px !important;
  margin: auto;
  padding: 0 20px;
}

.machine_grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.ma_grid_item {
  width: 32% !important;
  min-height: 260px;
}

@media screen and (max-width:1123px) {
  .machine_grid {
    justify-content: center;
  }
  .ma_grid_item {
    width: 310px !important;
    margin: 25px;
  }
}

@media screen and (max-width:768px) {
  .ma_grid_item {
    width: 100% !important;
  }
}

.ma_grid_item a{
padding: 20px;
display: block;
text-decoration: none;
}
.ma_grid_item a .pic01{
  display: block;
  height: 185px;
  text-align: center;
}


@media screen and (max-width: 979px) {
  .ma_grid_item a .pic01{
    height: auto;
  }
  .ma_grid_item a .pic01 img{
    top: auto;
    margin: auto;
    transform: none;
  }
}

.ma_grid_item a .text01{
margin-top: 15px;
font-size: 1.8rem;
}
.ma_grid_item a .text01:before{
content: "";
display: inline-block;
width: 15px;
height: 15px;
background: url(../images/common/icon_arrow_square02.png) no-repeat 0 0 / 100%;
margin: 0 6px 0 0;
vertical-align: -2px;
}

.contents {
	padding-bottom: 80px;
}
@media screen and (max-width: 768px) {
	.contents {
		padding-bottom: 50px;
	}
}

.inquiry_link img {
	position: relative;
}
#inquiry_close img {
	position: absolute;
	top: 114px;
	right: 20px;
}
@media screen and (max-width: 768px) {
	#inquiry_close img {
		position: absolute;
		top: 75px;
		right: 10px;
	}
}

/* トップページ */
#nishinihon_pc {
margin:0 auto;
padding-top:30px;
max-width: 980px;
}
#nishinihon_sp {
margin:0 10px;
padding-top:30px;
max-width: 980px;
}
#nishinihon_pc{
display: block;
}
#nishinihon_sp{
display: none;
}
.indMenu .topics .inner .topicsint {
padding-top: 25px;
text-align: center;
font-size: 2rem;
}

#container .contents > section.kv {
	margin-bottom: 40px !important;
}
#container .contents > .kv img {
	width: 100%;
}

@media screen and (max-width: 768px) {
	#container .contents > section.kv.top {
		margin-bottom: 20px !important;
	}
}
#container .contents > section.kv_b {
	margin-bottom: 60px;
}
.title-lg05 {
font-size: 1.8rem;
font-weight: bold;
}
.bg_gray02 {
	padding: 10px;
	background: #f2f2f2;
	text-align: center;
}
.bg_gray02 p {
	padding: 4px 0;
	line-height: 1.2em;
}
@media screen and (max-width: 768px) {
	section.kv_b {
		margin-bottom: 40px !important;
	}
	.bg_gray02 {
		text-align: left;
	}
}

/*-mq-*/
@media screen and (max-width: 768px) {
#nishinihon_pc{
display: none !important;
}
#nishinihon_sp{
display: block !important;
}
}
@media screen and (max-width: 1150px) {
.indMenu .topics .inner .topicsint {
padding-top: 50px;
}
}

/* トップスライド */
.kv_inner .title a:hover {
  opacity: 1.0;
}
.kv_inner.fixnotekv img.lnb_sh {
display: none;
}
.kv_inner.fixnotekv img.lnb_no {
display: block;
}
@media screen and (min-width: 1150px) and (max-height: 768px) {
.kv_inner.fixnotekv { /* layout2534 */
max-width: 1500px;
}
/*.kv_inner.fixnotekv .slide01.slick-slide {
max-width: 1500px;
}*/
.kv_inner.fixnotekv .pos_rel01 { /* top37 */
margin: 0 auto;
max-width: 1280px;
}
.kv_inner.fixnotekv .slick-slide { /* top49 */
height: 460px !important;
}
.kv_inner.fixnotekv :not(.slide01).slick-slide img{ /* /products/machine.html /products/mecha.html メイン画像用 top84 */
width: auto;
height: 100%;
max-width:none;
margin: auto;
}
.kv_inner.fixnotekv :not(.slide01).slick-slide img { /* top84 */
/* 画像中央 */
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
height: auto;
}
.kv_inner.fixnotekv .slick-slide .title {
height: 100%;
text-align: center;
}
.kv_inner.fixnotekv :not(.slide01).slick-slide .title { /* top90 */
/* 画像中央 */
overflow: hidden;
width: 100%;
position: relative;
}
.kv_inner.fixnotekv img.lnb_sh {
display: block;
}
.kv_inner.fixnotekv img.lnb_no {
display: none;
}
}

/* ハンバーガーメニュー */
.page_nav > ul > li .level_num3 > ul {
font-size: 1.2rem;
}
.page_nav > ul > li .level_num3 > ul > li {
padding-left: 10px;
}
.page_nav > ul > li .level_num3 > ul > li > a {
padding-left: 0 !important;
color: #b2b2b2;
}
.page_nav > ul > li .level_num3 > ul > li > a.white {
color: #FFFFFF;
}
.page_nav > ul > li .level_num3 > ul > li > ul {
padding-left: 0;
}

/* グローバルメニュー */
.global-nav_menu > ul > li > ul > li .categoryMenu .grid_col3 {
display: -webkit-box;
display: -moz-box;
display: -ms-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: flex;
-webkit-box-lines: multiple;
-moz-box-lines: multiple;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.global-nav_menu > ul > li > ul > li .categoryMenu.thin .grid_col3 .grid_item > li ul li.bigfont {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.global-nav_menu > ul > li > ul > li .categoryMenu .grid_col3 .gridlist {
margin-top:-90px
}

@media screen and (max-width: 979px) {
.page_nav > ul > li .level_num3 > ul {
display: block;
}
.page_nav > ul > li .level_num3 > ul > li > ul {
display: none;
}
}

/* 工作機械 */
#container .contents > section.kotei .grid_col3 {
display: -webkit-box;
display: -moz-box;
display: -ms-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: flex;
-webkit-box-lines: multiple;
-moz-box-lines: multiple;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
section.selectArea .selectMenu > li > ul li.fontsize90 {
font-size: 90%;
}
/*amp-*/
.title_line01 .category .modelName{
display: block;
color:#FF0000;
}
/*-amp*/
/* product_detail.css上書き */
/*機種別*/

@media screen and (min-width: 978px) {
.grid_col2 .grid_item .point.smallfont {
	margin-top: 20px;
    font-size: 1.3rem;
}
.grid_col2 .grid_item .point.smallfont .title-md01 {
    font-size: 1.6rem;
}
.grid_col2 .grid_item .point.smallfont .title-md01-sab {
	margin-top: 5px;
}
.grid_col2 .grid_item .point.smallfont .pointList .num {
	width: 14px;
	height: 14px;
}
.grid_col2 .grid_item .point.smallfont .pointList li {
	margin-bottom: 0;
	padding-left: 20px;
    font-size: 1.2rem;
}
}
@media screen and (max-width: 979px) {
table.tblBlock_even-gray02 {
    width: 910px;
}
.grid_col2 .grid_item .productPic_slide img {
    padding-top: 0 !important;
}
}
.catalog_link.stpdf {
    width: 157.5px;
}
.catalog_link.stpdf a::after {
left: 30px;
}

/* メカトロニクス */
.training.tblauto, .training-s.tblauto {
table-layout: auto;
}
.training.sfont80 {
font-size: 80%;
}
.training.sfont60 {
font-size: 60%;
}
.training td.bd_b_dashed {
border-bottom: 1px dashed #aaa5a3;
}
.training td.bd_r_none {
border-right: none;
}
.training td.bg-white {
background-color: #FFFFFF;
}
.training table td .bigfont {
font-size: 250%;
}
.training table td {
padding: 0;
border: none;
}

h3.plus_title01 {
margin-bottom: 10px;
padding: 8px 0 8px 20px;
line-height: 1.2em;
background: url(../images/mecha/toyopuc/plus_title01.png) repeat-y;
font-size: 1.8rem;
font-weight: normal;
}
h4.plus_title02 {
margin-bottom: 5px;
padding: 5px 0 5px 20px;
line-height: 1.2em;
background: url(../images/mecha/toyopuc/plus_title02.png) repeat-y;
font-size: 1.6rem;
font-weight: normal;
}
p.toyopuc_title01 {
margin: 10px 0 5px;
padding: 3px 0;
text-align: center;
line-height: 1.6em;
background: #566369;
font-size: 1.6rem;
font-weight: normal;
color: #FFFFFF;
}

p.t_plus {
margin-left: 40px;
margin-bottom: 10px;
text-indent: -1em;
}
p.pc3jx_title {
margin: 30px 0 10px;
}
h4.pc3jx_title {
margin-top: 10px;
margin-bottom: 2px;
padding: 3px 0 3px 20px;
line-height: 1.2em;
background: url(../images/mecha/toyopuc/pc3jx_title01.png) repeat-y;
font-size: 1.8rem;
font-weight: normal;
}
ul.pc3jx_title05 li {
margin-bottom: 10px;
padding: 1px 0 1px 10px;
line-height: 1.2em;
text-decoration: none;
background: url(../images/mecha/toyopuc/pc3jx_title05.png) repeat-y;
}
.pc3jx_arrow01 {
color: #0F074F;
font-weight: bold;
}
h3.mcml_title {
margin-bottom: 10px;
padding: 3px 0 3px 25px;
line-height: 1.2em;
background: url(../images/products/mecha/mcml_title.png) repeat-y;
font-size: 1.8rem;
}
.products-list-item.noshadow {
box-shadow: none;
}
ul.mecha_num a {
text-decoration: none;
}
ul.mecha_num a:hover {
text-decoration: underline;
}
ul.mecha_num > li {
margin-bottom: 10px;
}
ul.mecha_num > li > a::before {
content: "";
display: inline-block;
width: 15px;
height: 15px;
background: url(../images/common/icon_arrow_square01.png) no-repeat 0 0 / 100%;
vertical-align: middle;
margin-right: 5px;
}
ul.mecha_num > li > ul > li {
margin-left: 1.5em;
}
ul.mecha_num > li > ul > li > ul > li {
margin-left: 1.5em;
}
ul.mecha_num li.ind {
padding-left: 20px;
text-indent: -20px
}
ul.mecha_num li.ind span.small {
font-size: 90%;
}
.wd_inner {
width: 980px;
margin-left: auto;
margin-right: auto;
}
.wd_bg_gray01 {
margin-top: 10px;
background-color: #f2f2f2;
}
.wd_bg_gray01 > div {
width: 980px;
margin-left: auto;
margin-right: auto;
}

/* layout.css 上書き */
#breadCrumbs .inner {
margin: 0 !important;
padding: 10px 250px 10px 20px;
width: 100%;
height: 40px;
}
.btn-items {
margin-top: 10px;
}
.btn-items a {
min-height: 68px;
}
.btn-red {
width: auto !important;
min-width: 161px;
background: #c1272d !important;
box-shadow: none !important;
}
.btn-red br{
/*display: block !important;*/
}
/* 横並び */
.btn-box.tblbox {
display: table;
}
.btn-box.tblbox .btn-wrap {
display: table-cell;
vertical-align: middle;
width: 181px;
padding-left: 10px;
}

@media screen and (max-width: 979px) {
#breadCrumbs .inner {
padding: 10px 20px 10px;
height: auto;
}
.wd_inner {
padding: 0 20px;
width: 100%;
}
.wd_bg_gray01 > div {
width: 100%;
}
ul.tbw980 {
width: auto;
}
}

.banner {
	padding: 20px 20px 0 20px;
	text-align: center;
}

@media screen and (max-width: 580px) {
.banner {
	margin-top: 30px;
}

@media screen and (max-width: 1150px) {
	.indMenu {
		margin-top: 20px;
	}
}

/* layout.css 上書き */
.btn-items a {
height: auto;
}
.btn-red {
width: 100% !important;
margin: 5px 0;
}
.btn-red br {
display: none !important;
}
.btn-box, .btn-box.tblbox {
display: block;
float: none !important;
}
.btn-box.tblbox .btn-wrap {
display: block;
width: 100%;
padding-left: 0;
text-align: center;
}
#container .contents > section {
margin-bottom: 40px;
}
.title_line01 {
margin: 20px 0 !important;
}
.title_line01 .category, .title-page01, .title-page02, .title-xlg01, .title-en {
text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff !important;
}
.kv {
margin-bottom: 0px;
}
/* slick-theme.css 上書き */
.slick-dotted.slick-slider {
margin-bottom: 0px !important;
}

p.t_plus {
margin-left: 10px;
margin-bottom: 10px;
text-indent: 0;
}
}

.arrow-type03::after {
top: -3px !important;
}

/* お問い合わせフォーム */
.tblBlock_address01 td ul.inputField_row01 li {
	margin-bottom: 5px;
}
#container .select01 select {
	margin-bottom: 5px;
}
#container .contact .select01 select::-ms-expand {
display: none;
}
.contact th p {
display: flex;
justify-content: space-between;
}
@media screen and (max-width: 979px) {
.contact th p {
justify-content: start;
}
}
.contact .txt_required01 {
height: 24px;
}
.contact .err {
color: #FF0000;
font-weight: bold;
}
.contact label[for="edit_country"] {
margin-left: 1em;
}
/*.contact .grid_col3 cf {
margin-top: 0;
}*/
@media screen and (max-width: 600px) {
.contact label[for="edit_country"] {
display: block;
margin-left: 0;
}
.contact #edit_country {
width: 80% !important;
}
}

/* jimtof2018 */
@media screen and (max-width: 405px) {
.ex_text_box p {
text-indent: 0 !important;
}
}

.bnn_jimtof2018 {
margin-bottom: 56px;
text-align: center;
}
.bnn_jimtof2018 a {
text-decoration: none;
}
.bnn_jimtof2018 p {
margin-bottom: 10px;
font-size: 180%;
}
.bnn_jimtof2018 p {
margin-bottom: 5px;
font-size: 110%;
}
.bnn_jimtof2018 img {
max-width: 60%;
}
.ex_bnr {
max-width: 980px;
margin: 0 auto;
}
.ex_map_item2 {
position: relative;
max-width: 980px;
margin: 0 auto 40px;
}
.ex_map_item2 p {
position: absolute;
}
.ex_map_item2 p.mapdtl1 {
top: 49.5%;
left: 15%;
}
.ex_map_item2 p.mapdtl2 {
top: 49.5%;
left: 65%;
}
.ex_map_item2 p.mapdtl3 {
top: 94.5%;
left: 6.5%;
}
.ex_map_item2 p.mapdtl4 {
top: 94.5%;
left: 40%;
}
.ex_map_item2 p.mapdtl5 {
top: 94.5%;
left: 73%;
}
.ex_map_item2 p a {
display: inline-block;
width: 220%;
line-height: 2em;
text-align: center;
color: #ffffff;
background: #c1272d;
text-align: center;
font-weight: bold;
font-size: 1.8vw;
text-decoration: none;
}
.ex_map_item3 {
max-width: 980px;
margin: 0 auto 90px;
}
@media screen and (max-width: 405px) {
.bnn_jimtof2018 {
margin-bottom: 24px;
}
.ex_bnr {
width: 100% !important;
}
}
@media screen and (min-width: 980px) {
.ex_map_item2 p a {
font-size: 130%;
}
}
@media screen and (max-width: 500px) {
.ex_map_item2 p.mapdtl1, .ex_map_item2 p.mapdtl2 {
top: 48%;
}
.ex_map_item2 p.mapdtl3, .ex_map_item2 p.mapdtl4, .ex_map_item2 p.mapdtl5 {
top: 93%;
}
}

.contact_info {
margin-top: -30px;
margin-bottom: 30px;
text-align: center;
}
@media screen and (max-width: 580px) {
.contact_info {
margin-top: -10px;
}
}

/* カスタマーサポート */
.emergency {
margin: 20px 0 10px;
cursor: pointer;
}
.emergency span {
display:inline-block;
}
.emergency span:nth-child(1) {
width: calc(100% - 250px);
}
.emergency span:nth-child(2) {
width: 250px;
}
.emergency a.holiday {
font-size: 2.4rem;
color: #c1272d;
font-weight: bold;
text-decoration: none;
}
.emergency a.renraku {
display: block;
margin: 0 0 0 auto;
padding: 6px 0 6px 70px;
width: 230px;
height: 49px;
line-height: 35px;
letter-spacing: -0.1em;
text-decoration: none;
background: url(../images/support/customer/emergency.png) #FFFFFF no-repeat 8px 3px / auto 35px;
border: 1px solid #c1272d;
color: #c1272d;
font-size: 1.6rem;
}
@media screen and (max-width: 820px) {
.emergency {
position: static;
}
.emergency span {
display: block;
width: auto !important;
margin: 0 auto 20px;
}
.emergency a.holiday {
font-size: 1.6rem;
line-height: 1.2em;
}
}
@media screen and (max-width: 500px) {
.emergency a.renraku {
padding: 5px 0 3px 45px;
width: 180px;
height: 34px;
line-height: 25px;
background: url(../images/support/customer/emergency.png) #FFFFFF no-repeat 5px 2px / auto 25px;
font-size: 1.4rem;
}
}

/* トレーニングスクール */
.training_steptbl {
display: table;
}
.training_steptbl .tbl-l {
display: table-cell;
width: 150px;
vertical-align: top;
}
.training_steptbl .tbl-l p {
width: 150px;
height: 60px;
line-height: 60px;
background: #FFFFFF;
text-align: center;
font-weight: bold;
font-size: 2.0rem;
color: #c1272d;
}
.training_steptbl .tbl-r {
display: table-cell;
padding: 50px 30px;
width: 830px;
vertical-align: top;
font-size: 1.6rem;
}
.training_steptbl .tbl-r ul li {
padding-left: 1em;
text-indent: -1em;
}
ul.list-style-decimal li {
padding-bottom: 10px;
list-style: decimal;
list-style-position: inside;
}
.training_arrow {
margin: 50px 0;
text-align: center;
}
.training-list-wap {
display: flex;
flex-wrap: wrap;
padding-bottom: 50px;
width: 720px !important;
}
.training-list-wap.single {
width: 240px !important;
}
.training-list-item {
width: 100%;
margin: 1em 20px;
width: 200px;
}
.training-list-item a {
display: block;
background-color: #fff;
text-align: center;
padding: 5px;
color: #2E3192;
font-weight: bold;
text-decoration: none;
font-size: 1.8rem;
}
.training-list-item a:hover {
text-decoration: underline;
}
@media (max-width:850px) and (min-width:581px){
.training-list-wap {
width: 100% !important;
padding: 0 5% 50px 10%;
}
.training-list-wap.single {
width: 200px !important;
padding: 0 0 50px !important;
}
.training-list-item {
width: 200px;
}
}
@media screen and (max-width: 580px) {
.training_steptbl, .training_steptbl .tbl-l, .training_steptbl .tbl-r {
display: block;
}
.training_steptbl .tbl-r {
width: 100%;
}
.training-list-wap {
margin: 0 auto;
width: 200px !important;
}
.training-list-wap.single {
width: 200px !important;
}
.training-list-item {
margin: 1em 0;
width: 200px;
}
}

.w30p {
width: 30% !important;
}
.w200 {
width: 200px !important;
}
a.red_line {
color: #c1272d;
text-decoration: underline;
}
.komeclr {
	color: #c1272d;
}
.komebgclr {
	background-color: #c1272d;
}/*.bg-grey {
background-color: #d2d2d2 !important;
}*/

.video_linkoverlay{
	height:200px !important;
}
.grid_col2 .grid_item a.video_link {
    margin: 10px 0 0 !important;
}
.video_text {
	text-align: center;
	color: #c1272d;
	font-size: 120%;
}
@media all and (-ms-high-contrast: none){
  .video_linkoverlay{
    display: none;
  }
}
#container .contents > section .grid_col3 .grid_item {
    margin-right: 21px;
}
@media screen and (max-width: 768px) {
#container .contents > section .grid_col3 .grid_item {
    margin-right: 0;
}
}
/* ダウンロード */
.tblBlock_thT01 {
    margin-top: 2px !important;
    margin-bottom: 20px !important;
}

@media screen and (max-width: 979px) {
	main {
		padding-bottom: 80px !important;
	}
}

/* メカトロニクス */
.rbtn {
	margin: 0 auto;
	width: 200px;
}
.rbtn a.btn {
	display: block;
	padding: 10px 15px;
	width: 100%;
	background-color: #c1272d;
	display: inline-block;
	text-decoration: none;
	text-align: center;
	line-height: 1.6em;
}
.rbtn a.btn span {
	display: block;
	padding: 0;
	text-align: center;
	color: #fff;
	background: url(../images/common/arrow_w02.png) no-repeat right center;
	text-decoration: none;
}

.products-list-itemlink ul li {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.products-list-itemlink .products-list-des {
	margin-left: -1.5em;
	font-size: 12px;
}
.products-list-des ul {
	width: auto !important;
	margin: 10px 0 10px 20px !important;
}
.products-list-itemlink .products-list-des ul {
	font-size: 12px;
}

.ttl_std_container01 {
	margin: 0 auto;
}
.ttl_std01 a, .ttl_std01 span {
	display: inline-block;
	padding: 8px 30px;
	text-align: center;
	color: #ffffff;
	background: #c1272d;
	text-align: center;
	text-decoration: none;
}
.ttl_std02 a, .ttl_std02 span {
	display: inline-block;
	padding: 8px 30px;
	text-align: center;
	color: #ffffff;
	background: #c1272d;
	text-align: center;
	border-radius: 3px;
	text-decoration: none;
}

section#hoshu {
	padding-top: 10px;
}

table.info th,
table.info td {
	white-space: normal !important;
	word-break: normal !important;
}

@media screen and (max-width: 1200px) {
.specificationBox .table-responsive {
	overflow-x: scroll;
}
.specificationBox .table-responsive > table {
	width: 910px;
}
}

.err {
font-weight: bold;
color: #c50000;
font-size: 18px;
}
.err.ttl {
margin-bottom: 10px;
text-align: center;
font-size: 24px;
}

/* download form */
.dlcheck {
width: 100%;
border: 1px solid #ccc;
padding: 10px;
border-radius: 5px;
background-color: #f8ff99;
min-height: 45px;
}
