/*基本*/

.small {
	font-size: 12px;
}

h2 {
	text-align: center;

}

.sponly {
	display: none;
}


.contents {
	position: relative;
}

/*hover link*/
.hoverlink_box {
	width: 130px;
	display: block;
	position: fixed;
	bottom: 60px;
	right: 5px;
	z-index: 2;
}

.fixed_btn {

	display: flex;
	widows: 100%;
	padding: 10px 5px;
	font-size: 12px;
	line-height: 23px;
	/*  border: 3px solid #2e9b8b;*/
	border-radius: 3px;
	color: #fff;

	box-shadow: 2px 2px 8px #9fa2b1;
	z-index: 1;
	text-align: center;
}


.fixed_btn div {
	margin: auto;
}

.fixed_btn i {
	padding-left: 10px;
}

.fixed_btn:hover {
	transition: 0.3s;
	color: #fff;
	opacity: 0.6;
}


.donyu {
	margin-bottom: 10px;
	background: #44709b;
}

.showroom {

	background: #d4823c;
}



/*hardlink*/

.hard_link_wrap {
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 10px;
	width: 50%;
	display: flex;
	justify-content: space-around;
	border: 1px solid #55c3dd;
	border-radius: 3px;
}

.hard_link_wrap:hover {
	opacity: .8;
}

.hard_link_wrap .hard_link {
	display: block;
	width: 100%;
	text-align: center;
	vertical-align: middle;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center
}

.hard_link_wrap .hard_link i {
	margin-left: 10px;
}


.hard_link_wrap img {
	display: block;
	width: 100px;
	margin: auto;
}

.logo {
	width: 150px !important;
	margin: auto;
}

/*intro*/

.intro h2 {
	font-size: 28px;
	font-weight: bold;
	margin: 30px auto 0px;

}

.g:hover {
	opacity: .6;
}

/*スライダー*/

/*ãƒ†ãƒ¼ãƒ–ãƒ«*/

font.productTitle {
	color: #06c103;
	display: block;
	font-size: 1.7em;
	font-weight: bold;
}

.productImg {
	margin: 30px;
}

.productImg .img {
	margin: auto;
	text-align: center;
	display: block;
	max-height: 350px;
}

.productImg .col-6 img {
	max-width: 240px;
	max-height: 300px;
	object-fit: contain;
	margin: auto;
}

.productImg .col-6 img.w_medium {
	max-width: 300px;
}

.productImg .col-6 img.w_large {
	max-width: 400px;
}

.slick-prev {
	left: 10px !important;
	z-index: 1;
}

.slick-next {
	right: 10px !important;
}



/*テーブル*/

font.productTitle {
	color: #06c103;
	display: block;
	font-size: 1.7em;
	font-weight: bold;
}

.productImg .img {
	margin: auto;
	text-align: center;
	display: block;
}

.slick-prev {
	left: 10px !important;
	z-index: 1;
}

.slick-next {
	right: 10px !important;
}

.color {
	display: flex;
	text-align: center;
}

.color img {
	padding: 10px;
}

.one_yr::after {
	display: inline-block;
	content: "1年保証";
	font-weight: 300;
	font-size: 12px;
	padding: 5px 20px;
	/* margin-right:10px; */
	margin: 0 10px 0px 15px;
	color: white;
	/*文字色*/
	background: #242323;
	/*背景色*/
	/* position:absolute; */
	/* top:50%;   left:0px; */
	/* margin-top:-15px; */
	border-radius: 5px
}

.three_yr::after {
	display: inline-block;
	content: "3年保証";
	font-weight: 300;
	font-size: 12px;
	padding: 5px 20px;
	/* margin-right:10px; */
	margin: 0 10px 0px 15px;
	color: white;
	/*文字色*/
	background: #a72941;
	/*背景色*/
	/* position:absolute; */
	/* top:50%;   left:0px; */
	/* margin-top:-15px; */
	border-radius: 5px
}



.pos table td {
	background: #fff;
	padding: 0.5em;
	text-align: left;
	word-break: keep-all;
}

.pos table td:nth-child(1) {
	width: 60%;
}

.pos table td:nth-child(2) {
	width: 40%;
}

.pos table td:nth-child(3) {
	width: 20%;
}


/*絞り込み*/

.boxes h3 {
	color: #fff;
	font-weight: bold;
	padding: 0 0 0 20px;
}

.boxes2 h2 {
	font-size: 23px;
	color: #000000;
	float: left;
	color: white;
	vertical-align: middle;
	margin-bottom: 0px;
}

.p-title_line {
	display: flex;
	margin-bottom: 20px;
	padding-bottom: 0px;
	background: #1e8d93;
	color: #3c3131;
	padding: 15px;
	vertical-align: inherit;
	margin-top: 30px;
}

.p-title_line h2 {
	color: white;
	font-size: 23px;
	width: 82%;
	text-align: left;
	padding-left: 10px;
}


.p-title_line2 {
	display: flex;
	margin-bottom: 20px;
	padding-bottom: 0px;
	background: #6d6d6d;
	color: white;
	vertical-align: inherit;
	margin-top: 30px;
	padding: 5px 15px;
}

.p-title_line p {
	margin-left: 30px;
	vertical-align: text-bottom;
	width: 102%;
	vertical-align: middle;
	color: #fff;
}





.filter {
	/*  margin-top: 20px;*/
	overflow: hidden;
	margin-bottom: 40px;
	display: flex;

	justify-content: space-around;
	vertical-align: middle;
}

.filter div {
	display: flex-box;
	text-align: center;
	cursor: pointer;
	padding: 10px;
	width: calc(90%/4);
	border: 2px solid #555555;
}

.filter2:first-of-type {
	margin-top: 20px;
}

.filter2 {
	margin-top: 5px;
	overflow: hidden;
	display: flex;
	vertical-align: middle;
}

.filter2 div {
	display: flex-box;
	text-align: center;
	cursor: pointer;
	padding: 15px 6px;
	width: calc(98%/4);
	margin-right: 5px;
	border: 2px solid #555555;

}

.filter2 div i {
	margin-left: 10px;
}

.active {
	background-color: #f8efeb;
	border: 2px solid #E36E69 !important;
}

.active2 {
	background-color: #dcdeea;
	border: 2px solid #aeb3dd !important;
}

.filter2 {
	display: flex;
	width: 100%;
	margin-bottom: 0px;
	margin-top: 0px;
}

.filter2 div {
	width: 100%;
	margin: 2px 2px;
	padding: 9px 2px;
	vertical-align: middle;
}
}




.boxes {
	flex-wrap: wrap;
}



.boxes div article.subContent {
	max-width: 1010px;
}

.boxes div article.subContent h4 {
	max-width: 1010px;
	padding: 10px;
	line-height: 20px;
	color: #000;
	width: 100%;
	/* background:#fff; */
	cursor: pointer;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,eaeaea+100 */
	border-top: 2px solid #d8e2d9;
	/* background: #ffffff; */
	/* Old browsers */
	/*background: -moz-linear-gradient(top,  #ffffff 0%, #eaeaea 100%);*/
	/* FF3.6-15 */
	/* background: -webkit-linear-gradient(top,  #ffffff 0%,#eaeaea 100%); */
	/* Chrome10-25,Safari5.1-6 */
	/* background: linear-gradient(to bottom,  #ffffff 0%,#eaeaea 100%); */
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eaeaea', GradientType=0);
	/* IE6-9 */
	/* border-bottom:1px solid #b5b5b5; */
}



.boxes div article.subContent h4:hover {
	background: #f5f4f4;
}

.boxes div article.subContent h4.none:hover {
	background: none;
	cursor: default;
}




.filter a.active:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 0;
	border-color: #333 transparent transparent transparent;
}

.is-animated {
	animation-timing-function: ease-in-out;

}

@keyframes zoom-in {
	0% {
		transform: scale(.1);
	}

	100% {
		transform: none;
	}
}




/*アコーディオン*/



.menu {

	padding: 0;
}

.subInner {
	display: none;
	margin-bottom: 20px;
	/*  padding: 2em 1em;*/
	/*border-bottom: 1px solid #b5b5b5;*/
	border-top: 1px solid #ededed;
}

.subInner:active {
	display: block;

}

article.subContent {
	max-width: 1010px;
}

article.subContent h4 {
	max-width: 1010px;
	padding: 10px;
	line-height: 20px;
	color: #000;
	width: 100%;
	/* background:#fff; */
	cursor: pointer;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,eaeaea+100 */
	border-top: 1px solid #b5b5b5;
	/* background: #ffffff; */
	/* Old browsers */
	/*background: -moz-linear-gradient(top,  #ffffff 0%, #eaeaea 100%);*/
	/* FF3.6-15 */
	/* background: -webkit-linear-gradient(top,  #ffffff 0%,#eaeaea 100%); */
	/* Chrome10-25,Safari5.1-6 */
	/* background: linear-gradient(to bottom,  #ffffff 0%,#eaeaea 100%); */
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eaeaea', GradientType=0);
	/* IE6-9 */
	/* border-bottom:1px solid #b5b5b5; */
}

article.subContent h4:hover {
	background: #f5f4f4;
}

.productName {
	display: block;
	color: #3e3e3e;
	line-height: 1.5;
	font-weight: 600;

}

.hd4 {
	margin: 0 0 15px;
	color: #333;
	font-weight: bold;
}

.set {
	background: #f2f2f2;
	padding: 10px 0px 0px 10px;
	margin-bottom: 15px;
}

.set li {
	display: inline-block;
}

.set li::after {
	content: "/";
	margin: 0 5px;
}

.set li:last-child::after {
	content: "";
}

.price {
	color: #000;
	font-size: 150%;
	font-weight: bold;
}


.price_box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.price_box a {
	padding: 10px 15px;
	text-align: center;
	border-radius: 50px;
	background: #d64550;
	color: #fff;
	font-weight: 300;
	margin: 20px 0 20px 10px;
}

.price_box a:hover {
	opacity: .3;
	color: #fff;
}

.titlePrice {
	color: #9b2525;
	font-weight: 600;
	font-size: 2.2rem;
	line-height: 1.5;
}

.titlePrice_tax {
	color: #9b2525;
	font-weight: 600;
	font-size: 2.2rem;
	line-height: 1.5;
}

.buy {
	font-size: 1.4rem;
	width: 145px;
	line-height: 20px;
}

.buy i {
	margin-left: 10px;
}

.buy div {
	display: table-cell;
}

/**/
.buy2 {
	font-size: 1.4rem;
	/*  width: 145px;*/
	line-height: 20px;
	background: #acacac;
	opacity: .3;
	padding: 9px 60px;
	border-radius: 50px;
	margin: 20px 0 20px 10px;
}



.buy2 i {
	margin-left: 10px;
}

.buy2 div {
	display: table-cell;
}

/**/

.titlePrice:after {
	content: "(税別)";
	font-size: 1.4rem;
	font-weight: 400;
	margin: 0 0.5em;
}

.ProductTitle {
	display: inline-block;
	vertical-align: middle;
	margin-left: 30px;
	margin-top: 10px;
}

/* 周辺機器セット */
article.accessory ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding: 0 1em;
	text-align: center;
}

article.accessory li {
	display: block;
}

.accessory {
	border: 1px solid #ccc;
	padding: 1em;
	margin-bottom: 2em;
}

.accessory div {
	padding-bottom: 10px;
}

.accessory:hover {
	opacity: .7;
	cursor: pointer;
}

.accessory h5 {
	margin-top: 10px;
}

.accessory table {
	width: 98%;
	margin: 0 auto;
}

.accessory table tr {
	border: 1px solid #c7c7c7;
}

.accessory table th {
	background: #eef8e7;
	border-right: 1px solid #c7c7c7;
	padding: 0.5em;
	width: 30%;
	vertical-align: middle;
	font-weight: bold;
}

.accessory table td {
	background: #fff;
	padding: 0.5em;
	width: 70%;
	text-align: left;
}

.accessoryOther {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.accessoryOther ul {
	display: block;
	border: 1px solid #c7c7c7;
	width: 32%;
	position: relative;
}

.accessoryOther li {
	padding: 1em 1em 3em;
}

.accessoryOther img {
	margin-left: 25%
}

.accessoryOther a {
	position: absolute;
	bottom: 5px;
}

.title {
	color: #464646;
	display: block;
	font-size: 1.5em;
	font-weight: 500;
	line-height: 1em;
	margin-bottom: 10px;
	margin-top: 0.5em;
	font-family: 'Noto Sans JP';
}

.price {
	color: #c30;
	font-size: 1.8em;

	bottom: 25px;
}

.price:before {
	content: "【価格】";
	margin-right: 0.5em;
	color: #000;
	font-size: 0.6em;
	font-weight: 100;
}

.price:after {
	content: "（税別）";
	font-size: 0.5em;
	font-weight: 100;
	margin-left: 0.5em;
}

/* 製品詳細開閉ボタン */
h4 span {
	display: block;
	font-size: 1.6em;
	position: relative;
	font-weight: bold;
	width: 100%;
}

h4 span:after {
	content: "詳細を開く　\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin-left: 2em;
	padding: 0.3em 1em;
	font-size: 0.6em;
	letter-spacing: 0.1em;
	position: absolute;
	right: 0%;
	bottom: -10px;
	color: rgb(67, 67, 67);

}

h4 span.open:after {
	content: "詳細を閉じる　\f00d";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin-left: 0em;
}

h5 span {
	display: block;
	font-size: 1.6em;
	position: absolute;
	font-weight: bold;
	bottom: 0%;
	left: 38%;
	width: 21%;
}

h5 span:after {
	content: "詳細を開く　\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin-left: 2em;
	padding: 0.3em 1em;
	font-size: 0.6em;
	letter-spacing: 0.1em;
	position: absolute;
	right: 0;
	bottom: 0;
	color: rgb(255, 255, 255);
	background: rgb(232, 132, 8);
}

h5 span.open:after {
	content: "詳細を閉じる　\f00d";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	;
	margin-left: 2em;
}



/* 製品一覧画像 */

.hard_wrap {
	display: flex;
}

.hardimg {
	min-width: 200px;
	height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
}

.hardimg img {
	object-fit: contain;
	height: 100%;
	max-width: 170px;
	max-height: 120px;
	display: block;
	margin: auto;
	text-align: center;
}


/* 製品詳細表 */

font.productTitle {
	color: #000000;
	display: block;
	font-size: 1.7em;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 15px;
}

.ProductTitle p {
	color: #3e3e3e;
}

.ProductTitle p.text_red_large {
	color: #d64550;
	font-size: 2rem;
}

.productImg li {
	margin-bottom: 10px;
}

.colorbox {
	text-align: center;
	margin-top: 40px;
	width: 100%;

}

.colorwrap {
	display: flex;
	justify-content: space-around;
	border: solid 1px #c6c6c6;
	margin: 10px;
	padding: 10px;
}

.colorB {
	margin-right: 10px;
}


.colorB::before {
	content: "●";
	font-size: 23px;
	margin-right: 10px;
}

.colorW::before {
	content: "〇";
	font-size: 23px;
	margin-right: 10px;
}

table tr {
	border: 1px solid #c7c7c7;
	box-sizing: border-box;
}

table th {
	background: #f5f5f5;
	border-right: 1px solid #c7c7c7;
	padding: .8em;
	vertical-align: middle;
	font-weight: bold;
	font-size: 13px;
}

table td {
	background: #fff;
	padding: 0.5em;
	text-align: center;
	vertical-align: middle;
	word-break: keep-all;
	box-sizing: border-box !important;
	font-size: 13px;
}

table {
	width: 100%;
	margin-top: 15px;
	margin-left: auto;
	box-sizing: border-box;
	table-layout: fixed;
}

.container {
	width: 90%;
	margin: auto;
	max-height: 300px;
	margin: 10px 0 0;
}

.slick-slide {
	width: 250px;
}

/*.slick-slide p{margin-top: 10px;}*/

/* POSカウンター表 */
.pos table td {
	background: #fff;
	padding: 0.5em;
	text-align: left;
	word-break: keep-all;
}

.pos table td:nth-child(1) {
	width: 60%;
}

.pos table td:nth-child(2) {
	width: 40%;
}

.pos table td:nth-child(3) {
	width: 20%;
}


/* 拡張ハードウェア */
.extension ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.extension li {
	display: block;

}




.modal-content {
	position: fixed;
	display: none;
	z-index: 2;
	width: 855px;
	margin-left: 0%;
	padding: 10px 20px;
	box-shadow: 0px 0px 10px 5px #c3c3c3;
	border-radius: 5px;
	background: #fff;
	margin: auto;
	top: 30%;
	left: 0;
	right: 0;
	margin: -9.5% auto;
}


.modal-overlay {
	z-index: 1;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(255, 255, 255, 0.75);
}

.modal-open {
	color: #000;
	text-decoration: blink;
}

.modal-open:hover {
	cursor: pointer;
	color: #000;
	opacity: 0.5;
}

a.modal-close {
	margin-top: 10px;
	color: #3a3a3a;
	text-decoration: blink;

}

p .modal-close {
	text-align: right;
}

p a.modal-close:before {
	content: "\f00d";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	margin-right: 0.5em;
	font-size: 2em;
	vertical-align: middle;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	display: inline-block;
}

p a.modal-close:hover {
	cursor: pointer;
	color: #000;
	opacity: 0.5;
}

p a.modal-close:hover::before {
	transform: rotate(360deg);
	-webkit-transform: rotate(360deg);
}

p.search {
	margin-top: 30px;
	margin-bottom: 2em;
	color: #fff;
	text-align: center;
	padding: 10px;
	background: #65ab31;
	display: block;
	text-decoration: none;
}

.modal-content a {
	display: block;
	text-decoration: none;
}

p.search a,
p.search a:hover {
	text-decoration: none;
	color: #fff;
}

p.search:hover {
	opacity: 0.8;
}

p.search:before {
	content: "\f002";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 0.5em;
	font-size: 1.5em;
	text-decoration: none;
}

.modal-content h2 {
	font-size: 1.5em;
	color: #65ab31;
	font-weight: bold;
	margin-bottom: 1em;
}

.Detail {
	display: flex;
	display: -webkit-flex;

}

.Detail div {
	display: block;
}

.Detail img {
	margin-right: 2em;
}

.Detail font {
	font-size: x-small;
	letter-spacing: 0.1em;
}

font.modalPrice {
	color: #c30;
	font-size: 2em;
	font-weight: bold;
}

font.modalPrice:before {
	content: "【価格】";
	color: #000;
	font-size: 0.6em;
	margin-right: 0.5em;
}

font.modalPrice:after {
	content: "(税別)";
	font-size: 0.6em;
	margin-left: 0.5em;
}

#extension {
	text-align: center;
}

#extension ul {
	display: flex;
	margin: 20px 0;
	/*    display: -webkit-flex;
    margin: 0 auto 2em;
    width:100%;
    height:240px;
    margin:0;
    padding:0;
    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;*/

}

#spec ul li {
	display: inline-block;
	width: 100%;
	height: auto;
	border: none;
	text-align: left;
	margin-top: 0px;
	padding: 5px 0px 0px;

	;
	/* margin-left: 100px; */
}


#extension li {
	width: calc(100%/4);
	height: 200px;
	justify-content: space-around;
	list-style: none;
	padding: 20px 10px 0px 10px;
	text-align: center;
	margin-bottom: 0;
	position: relative;
	border: 1px solid #c1c1c1;
	margin-right: 10px;


}

#extension li img {
	text-align: center;
	max-height: 100px;

}

#extension li p {
	margin-bottom: 20px;

}


#extension span {

	padding: .2em 1em;
	margin-top: 20px;
	border: 1px solid #b9b9b9;
}

#extension span::after {
	content: "詳細はこちら　\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;

}


.bottun {
	background: #476DB2;
	padding: .5em 1em;
	color: #fff;
	margin-top: 20px;
}

.bottun::after {
	content: "詳細はこちら　\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;

}

#extension span:hover {}

#poscounter ul {
	display: flex;
	display: -webkit-flex;
	border: 1px solid #ccc;
	padding: 1em;
	margin-bottom: 2px;
}

#poscounter li {
	display: block;

}

#poscounter h4 span:after {
	bottom: 10px;
}

.register img {
	width: 300px;
}

ul#dispenser li {
	height: auto;
	width: 100%;
	vertical-align: middle;
	padding: 10px 10px;
}

/* 詳細ボタン */
.deviceBox2 {
	margin-bottom: 30px;
}

.deviceBox2:after {
	content: '.';
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
}

.deviceBox2 li {
	float: left;
	width: 220px;
	margin: 0;
	padding: 0 5px 15px 0;
	border-right: #DCDCDC 1px solid;
	border-bottom: #DCDCDC 1px solid;
}

.deviceBox2 > li:nth-child(4n+4) {
	margin-right: 0;
}

.deviceBox2 li:nth-child(2) {
	margin: 0 0 0 15px;
}

.deviceBox2 li:nth-child(3) {
	margin: 0 15px;
}

.deviceBox2 h3 {
	margin: 0 0 5px;
	color: #C30;
	font-weight: bold;
	line-height: 1.6;
	font-size: 114.3%;
}

.deviceBox2 p {
	text-align: center;
}

.deviceBox2 p.photo {
	margin: 0 auto 10px;
}

.deviceBox2 a {
	display: block;
	width: 150px;
	margin: 10px auto 5px;
	padding: 5px;
	color: #FFF;
	line-height: 1.0;
	text-align: center;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.15);
	background: rgba(255, 148, 14, 1.0);
}

.deviceBox2 a:hover {
	text-decoration: none;
	background: rgba(255, 148, 14, 0.8);
}


/* POSカウンター詳細 */
.counterDetail {
	border: 1px solid #ccc;
	padding: 2em;
	margin: 0 auto;
}

.counterDetail p img {
	margin-bottom: 20px;
}

.counterDetail ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;

}

.counterDetail li {
	display: block;
	width: 45%;
}

.counterDetail table {
	width: auto;
	border-spacing: 0;
	font-size: 14px;
}

.counterDetail table th {
	color: #000;
	padding: 8px 15px;
	background: #eee;
	font-weight: bold;
	border: 1px solid #aaa;
	line-height: 120%;
	text-align: center;
}

.counterDetail table tr td {
	padding: 8px 15px;
	text-align: center;
}

.counterDetail table tr td:first-child {
	border-left: 1px solid #aaa;
}

.counterDetail table tr td:last-child {
	border-right: 1px solid #aaa;
}

.counterDetail table tr {
	background: #fff;
	border: none;
}

.counterDetail table tr:nth-child(2n+1) td {
	background: #eee;
}

.counterDetail table tr td:last-of-type {
	border-bottom: 1px solid #aaa;
}

.glay {
	padding: 5px 10px;
	background: #D5DBCF;
	font-weight: bold;
}


/**/
a img:hover {
	opacity: 0.8;
}

img.ttl_keigen {
	width: 100%;
	max-width: 201px;
}

ul.list_disc li {
	list-style: disc;
	line-height: 1.5;
	margin: 0 0 10px 2rem;
}

ul.list_decimal li {
	list-style: decimal;
	line-height: 1.5;
	margin: 0 0 10px 2rem;
}


@media screen and (max-width: 1024px) {

	.colorbox {
		text-align: center;
		margin-top: 40px;
		width: 100%;
	}

	.boxes h3 {
		width: 100%;
		margin-bottom: 10px;

	}

	.p-title_line {
		display: inline-block;
		width: 100%;
	}

	.p-title_line p {
		margin-left: 0px;
		vertical-align: text-bottom;
		width: 100%;
		vertical-align: middle;
	}

	.filter {
		display: inline-block;
		width: 100%;
		padding: 10px;
		margin-bottom: 0px;
	}

	.filter div {
		width: 100%;
		margin: 0 auto;
		margin-bottom: 5px;
	}

	table td {
		max-width: 100vw;
	}

	table.hack2 td {
		max-width: 95vw;
	}

	table.hack3 td {
		max-width: 90vw;
	}

	.pos table td {
		background: #fff;
		padding: 0.5em;
		text-align: left;
		word-break: keep-all;
	}

	.pos table td:nth-child(1) {
		width: 100%;
		border-right: 1px solid #aaa;
		border-left: 1px solid #aaa;
	}

	.pos table td:nth-child(2) {
		width: 100%;
		border-right: 1px solid #aaa;
		border-left: 1px solid #aaa;
	}

	.pos table td:nth-child(3) {
		width: 100%;
		border-right: 1px solid #aaa;
		border-left: 1px solid #aaa;
	}

	/*hardlink*/
	.hard_link_wrap {
		margin-top: 30px;
		width: 100%;
		padding: 10px;
		margin-bottom: 20px;
	}

	.hard_link_wrap:hover {
		opacity: .8;
	}

	.hard_link_wrap .hard_link {
		display: block;
		width: 100%;
		text-align: center;
		vertical-align: middle;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center
	}

	.hard_link_wrap .hard_link i {
		margin-left: 10px;
	}

	.hard_link_wrap img {
		display: block;
		width: 100px;
	}

	.logo {
		width: 120px !important;
		margin: 0 auto;
		padding: 10px 0;
	}

	.filter2 div {
		font-size: 13px;
		vertical-align: middle;
		margin: 2px 1px;
		padding: auto;
		height: 40px;
		letter-spacing: -1px;
	}

	.filter2 div i {
		margin-left: 5px;
	}

	#extension span {
		border: 1px solid #b9b9b9;
		margin-top: 20px;
		font-size: 12px;
		width: 100%;
	}

	#extension ul {
		display: block;
	}

	.p-title_line2 {
		display: inline-block;
		margin-bottom: 20px;
		padding-bottom: 0px;
		background: #6d6d6d;
		color: white;
		vertical-align: inherit;
		margin-top: 30px;
		padding: 5px 15px;
		width: 100%;
	}

	#extension li {
		float: left;
		width: calc(90%/2);
		height: 200px;
		justify-content: space-around;
		list-style: none;
		padding: 5px 5px 5px 5px;
		text-align: center;
		margin-bottom: 0;
		position: relative;
		border: 1px solid #c1c1c1;
		margin-right: 10px;
		margin-top: 5px;
	}

	.modal-content {
		position: fixed;
		display: none;
		z-index: 2;
		width: 75%;
		height: 89%;
		margin: auto;
		padding: 10px 20px;
		box-shadow: 0px 0px 10px 5px #c3c3c3;
		border-radius: 5px;
		background: #fff;
		top: 20px !important;
	}

	.Detail {
		display: block;
	}

	.Detail div {
		font-size: 1.4rem;
		margin: 0px 0 10px;
		text-align: left;
		line-height: 16px;
	}

	.modal-content h2 {
		font-size: 1em;
		color: #65ab31;
		font-weight: bold;
		margin-bottom: 1em;
	}

	.btm_btn03 {
		padding: 10px;
		margin-top: 10px;
	}

	.trial_app .btm_btn03,.trial_app .btm_btn03r{
		padding: 1.5rem 0;
		font-size: 15px;
		margin-top: 0px;
		min-width: 180px;}

}

@media screen and (max-width: 767px) {

	h4 span:after {
		font-weight: 600;
		margin-left: 2em;
		padding: 0.1em 1em;
		font-size: 0.6em;
		letter-spacing: 0.1em;
		position: absolute;
		right: 0;
		bottom: -7px;
		color: rgb(67, 67, 67);
		background: .4px solid #ccc;
	}

	.ProductTitle {
		display: inline-block;
		vertical-align: middle;
		margin-left: 10px;
		margin-top: 12px;
	}

	.productName {
		color: #3e3e3e;
		font-size: 19px;
		font-weight: 600;
	}

	.productImg {
		margin: 30px 0;
	}

	.hardimg {
		min-width: 110px;
		height: 137px;
		background: #fff;
	}

	.hardimg img {
		object-fit: contain;
		height: 100%;
		max-width: 110px;
		display: block;
		margin: auto;
		text-align: center;
	}

	.buy {
		font-size: 1.2rem;
		width: 100%;
	}

	.titlePrice_tax {
		font-size: 2.0rem;
	}

	.titlePrice_tax {
		font-size: 2.0rem;
	}

	.sponly {
		display: inherit;
	}

	font.productTitle {
		margin-top: 10px;
	}

	.container {
		width: 100%;
		margin: auto;
		max-height: 330px;
	}

	.hoverlink_box {
		padding-right: 60px;
		width: 100%;
		bottom: 220px;
		display: flex;
		left: 0;
		bottom: 0;
	}

	.fixed_btn {
		/*     position: fixed;*/
		/*    position: inherit;*/
		width: 100%;

		z-index: 1;
		text-align: center;
	}

	.fixed_btn i {
		padding-left: 10px;
	}

	.fixed_btn:hover {
		transition: 0.3s;
		color: #fff;
		opacity: 0.6;
	}

	.donyu {
		width: 50%;
		margin-bottom: 0px;
		margin-right: 4px;
	}

	.showroom {
		width: 50%;
	}

	/*ここからメディアクエリ*/

	table {
		border: none
	}

	table.hack td {
		width: 100%;
		border-right: none;
		border-left: none;
	}

	table.hack td.td_divide {
		width: 50%;
		border-right: none;
		border-left: none;
		float: left;
	}

	table.hack td.td_divide:last-child {
		width: 50%;
		border-right: none;
		border-left: 1px solid #c7c7c7;
		float: left;
	}

	table th br {
		display: none;
	}

	.main {
		background: #868686;
		color: white;
		padding: 10px;

	}

	table tr td {
		display: block;
		/*tdをブロックレベルに（セルをやめる）*/
		border-top: 0.4px solid #ccc;

		border-bottom: none;
	}

	table tr td::before {
		/*tdに擬似要素 ::before*/
		content: attr(aria-label);
		/*aria-label属性の値をコンテンツに*/
		float: left;
		/*テキストを左寄せにする*/
		font-weight: bold;
		padding-left: .7em
	}

	table tr td::after {
		/*クリアフィックス（コレは不要かもしれません）*/
		content: "";
		display: table;
		clear: both;
	}

	table tbody th {
		display: block;
		/*tbody内の thをブロックレベルに（セルをやめる）*/
		border: none;
	}

	.accessory table {
		width: 100% !important;
	}

	.accessory table th {
		width: 100%;
	}

	.price_box {
		align-content: center;
		margin-bottom: 20px;
		line-height: 50px;
	}

	.accessory table td {
		text-align: center;
		width: 100%;
	}

	colgroup {
		display: none;
	}
}

/* 印刷時の設定 */
@media print {

	/*印刷非表示*/
	.modal-content {
		position: fixed;
		display: none;
		z-index: 2;
		width: 855px !important;
		margin-left: 0%;
		padding: 10px 20px;
		box-shadow: none;
		border: 1px solid;
		border-radius: 5px;
		background: #fff;
		left: 10px !important;
	}

	/*印刷非表示*/
	#print,
	header,
	nav,
	.crumbs,
	footer {
		display: none;
	}

	.PageBreak {
		page-break-before: always;
		page-break-after: always;
	}

	/*改ページ*/
	h4 span.open:after {
		page-break-before: always;
		page-break-after: always;
	}
}
