@charset "UTF-8";

H2 {
	display: none;
}

/* menu button area */
.btarea {
	display: flex;
	background-color: #fff;
	border-radius: 5px;
	padding: 14px 20px;
	flex-wrap: wrap;

}

.btarea_base {
	display: flex;
	margin: 0px 0px 16px 0px;
	flex-wrap: nowrap;

}

.topmenu_content .btarea_base {
	margin: 5px 0px 0px;
}

.btarea_content {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 6px;
	align-items: center;
	max-width: 1200px;
}

.resbt1marea {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.resbt1marea .resbt1marea {
	display: block;
}

/* aelected menu button area */
.bcurr {
	/*background-color:#e4f1fa;*/
	background-color: #f1faff;

}

/* menu button title */
.bttit {
	margin-top: 4px;
	padding: 4px;
	line-height: 1.3em;
	font-size: 0.9em;
	display: block;
}

/* button base */
.bt {
	display: block;
	text-align: center;
	min-width: 30px;
	padding: 4px 14px 5px 14px;
	border-radius: 20px;
	font-size: 12px;
	text-decoration: none;
	cursor: pointer;
}

.bt:hover {
	opacity: 0.7;
}

/* small button base */
.bt-s {
	display: block;
	text-align: center;
	margin: 2px 2px;
	padding: 3px 8px 3px 8px;
	border-radius: 3px;
	line-height: 1.2em;
	font-size: 0.7em;
	text-decoration: none;
	cursor: pointer;
}

.bt-s:hover {
	opacity: 0.7;
}

/* button color */
.blue {
	background-color: #fff;
}

.blue-up {
	color: #fff;
	background-color: #2f67c8;
}

.blue-cup {
	color: #2f67c8;
	background-color: #fff;
	border: 1px solid #2f67c8;
}

.green {
	color: #024d0b;
	background-color: rgb(181, 230, 200);
	border: 1px solid rgb(134, 209, 166);
	box-shadow: 2px 2px 2px #1419168d;
}

.green-up {
	color: #fff;
	background-color: #5ec2d5;
	font-size: 12px;
	text-align: center;
	border-radius: 4px;
	line-height: 24px;
}

.blue-up .fa-check-square {
	color: #FBFF7F;
}

.green-up_read-text {
	text-align: center;
	margin: 10px 0;
	font-size: 11px;
}

.green-up_read-text span {
	font-size: 12px;
	font-weight: bold;
}

.gray {
	color: #555;
	background-color: #ccc;
	border: 1px solid #ccc;
	box-shadow: 1px 1px 1px #999;

}

/* reset button */
.resetbt {
	/*margin: 0px 0px 4px 8px;*/
	margin: 4px 0px 0px 8px;
	text-align: center;
	padding: 10px 8px;
	border-radius: 4px;
	font-size:12px;
	line-height: 1.2em;
	text-decoration: none;
	color: #fff;
	background-color: #808692;
	display: block;
}

.resetbt:hover {
	opacity: 0.7;
}

/* small button */
.resetbtsub {
	text-align: center;
	padding: 10px 0;
	border-radius: 4px;
	line-height: 1.2em;
	font-size: 12px;
	width: 100%;
	display: block;
	text-decoration: none;
	color: #fff;
	background-color: #808692;
}

.resetbtsub:hover {
	opacity: 0.7;
}

/* display change button (a link) */
.emdspch_bt {
	font-size: 0.9em;
	line-height: 1.6em;
}

.mdspch_bt {
	width: 99%;
	padding: 4px 0;
	text-align: right;
	font-size: 0.9em;
}

/* search input-text area */
.seartext {
	font-size: 11px;
	line-height: 1;
	border-radius: 4px 0px 0px 4px;
	margin: 0;
	padding: 4px 8px;
	border: 1px solid #f1fcfd;
	background-color: #fff;
	border: 1px solid #2E67C8;
}

/* search button */
.searbt {
	font-size: 0.9em;
	line-height: 1.2em;
	margin: 0;
	padding: 5px 8px;
	border-radius: 0px 4px 4px 0px;
	background-color: #2E67C8;
	border: 1px solid #2E67C8;
	color: #fff;
	min-width: 45px;
	text-decoration: none;
}

.searbt:hover {
	opacity: 0.7;
}

/* N-TEC link button */
.infobt {
	font-size: 1.0em;
	padding: 12px 4px;
	color: #2f67c8;
	font-weight: bold;
	background-color: #E4F0FA;
	text-decoration: none;
	margin-top: 10px;
	border-radius: 4px;
}

/* small N-TEC link button */
.infobt-s {
	font-size: 0.9em;
	line-height: 1.2em;
	padding: 8px 4px;
	color: #2f67c8;
	background-color: #f1faff;
	box-shadow: 2px 2px 2px #ccc;
	text-decoration: none;
}

/* Top menu area */
.topmenu {
	padding: 18px 18px 4px 18px;
	font-size: clamp(0.75rem, 0.7271rem + 0.0976vw, 0.8125rem);
	background-color: #C8E3F9;

	border-radius: 10px;
	position: relative;
	max-width: 1520px;
	margin: auto;
}

#topmenu {
	padding: clamp(0.625rem, 0.366rem + 1.105vw, 1.25rem);
}

/* Top menu area */
.topmenu_alg {
	display: grid;
	/*grid-template-columns: 16fr 17fr 11fr;*/
		grid-template-columns: 11fr 14fr 6fr;
	grid-template-rows: auto auto auto auto;
	/*align-items: center;*/
	align-items: flex-end;
}

/* Top menu position */
.tmpos {}

.tmposc_1 {
	grid-column: 1 / 3;
	flex-wrap:nowrap;
}

.tmposc_2 {
	grid-column: 1 / 3;
}

.tmposc_3 {
	grid-column: 3 / 4;
	grid-row: 1 / 4;
}

.tmposc_4 {
	grid-column: 1 / 3;
}

.tmposc_5 {
	grid-column: 1 / 3;
}

.tmposc_6 {
	grid-column: 3 / 4;
	grid-row: 4 / 5;
}


/**/

@media screen and (min-width: 1240px) {
	.topmenu_alg {
		/*grid-template-columns: 15fr 15fr 10fr;*/
		grid-template-columns: 11fr 12fr 8fr;
		grid-template-rows: auto auto auto auto;
		align-items: start;
	}

	.tmposc_1 {
		grid-column: span 1;
	}

	.tmposc_2 {
		grid-column: span 1;
	}

	.tmposc_3 {
		grid-column: 3 / 4;
		grid-row: 1 / 4;
	}

	.tmposc_4 {
		grid-column: span 2;
	}

	.tmposc_5 {
		grid-column: 1 / 3;
		grid-row: 3 / 5;
	}

	.tmposc_6 {
		grid-column: 3 / 4;
		grid-row: 4 / 5;

	}
}

@media screen and (max-width: 800px) {
	.topmenu_alg {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.tmposc_1 {}

	.tmposc_2 {}

	.tmposc_3 {}

	.tmposc_4 {}

	.tmposc_5 {}

	.tmposc_6 {
	}

}



/* reset button area */
.resetbtarea {
	margin:0px 0px 8px 0px;
	padding:0;
	font-size: 12px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

/* easymode reset button area */
.esyresetbtarea {
	font-size: 12px;
	display: flex;
	margin: 0;
	gap: 0px;
}

.resbt2marea {
	align-self: end;
}

@media screen and (max-width: 800px) {
	.resetbtarea {
		display: flex;
		flex: nowrap;
		width: 98%;
		margin: 4px 8px 8px 8px;
		text-align: left;
		font-size: 0.8em;
		line-height: 3em;
	}

	.resbt2marea {
		margin: 2px 0;
		font-size: 12px;
		margin-left: 0px;
	}
}

.topmenu_old {
	display: flex;
	margin: 0px;
	padding: 10px;
	flex-wrap: wrap;
	align-items: flex-start;
	font-size: 0.9em;
	line-height: 1.2em;
	background-color: #afcff1;
}

/* Top menu title */
.tmenu_title {
	margin: 3px 15px 4px 4px;
	white-space: nowrap;
	font-weight: bold;
}

@media screen and (max-width: 1200px) {
	.tmenu_title {
		margin: 4px 10px 4px 0px;
	}
}

/* Top menu easymode area */
.topstmarea {
	min-width: 60px;
	padding: 10px;
	background-color: #fff;
	border: 1px solid #2f67c8;
	border-radius: 4px;
	text-align: center;
}

/* Top menu easymode selected */
.topstm-curr {
	/*background-color:rgb(213, 230, 251);*/
}

.topstmarea1 {
	color: #2f67c8;
	font-size: 12px;
	padding: 0 0 4px;
}

/* Top menu easymode button area */
.topstmarea2 {
	padding: 2px 4px;
	font-size: 0.7em;
	border: 1px solid #ccc;
	border-radius: 4px;
	display: block;
}

.topstm2-curr {
	background-color: #2f67c8;
	color: #fff;
	border: 1px solid #2E67C8;
}

/* Top menu easymode button */
.topmenuareah {
	display: block;
	text-decoration: none;
	color: #444;
}

.topmenuareah:hover {
	opacity: 0.7;
}

.topmenuareah-curr {
	display: block;
	text-decoration: none;
	color: #fff;
}

.topmenuareah-curr:hover {
	opacity: 0.7;
}


/* ip formura menu */
.iprotate {
	width: 88%;
	transform: rotate(180deg);
}

/*Under Contents*/
.underarea {
	width: 100%;
	margin: auto;
	padding: 0;
	max-width: 1600px;
}

/* Left menu area */
.leftmenu {
	min-height: 400px;
	margin: 0;
	padding: 0px 20px 0px 0px;
	border-right: 1px solid #E3E3E3;
	font-size: 1.1em;
}

/* Left menu area size */
.leftmenu_full {
	width: calc(20% - 40px);
	min-width: 230px;
}

.leftmenu-block {
	margin-top: 8px;
	padding: 4px;
	border-radius: 8px;
	border: 1px solid #E3E3E3;
	background-color: #fff;

}

/* Left menu unit */
.left_marea {
	font-size: 12px;
	margin: 30px 0 0px 0;
	padding: 0;
}


.left_marea-last {
	border-bottom: 1px solid #fff;
}

.left_marea li {
	list-style-type: none;
}

.left_mtit {
	font-size: 13px;
	padding-bottom: 3px;
	border-bottom: #E3E3E3 1px solid;
	margin-bottom: 8px;
	font-weight: bold;
}

.left_mtit_sb {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-top: 2px;
}

/* notuser item disabled */
.disab {
	opacity: 0.5;
	cursor: not-allowed;
}

/* notuse Link and selected*/
.nolink {
	color: #555;
	font-weight: bold;
	text-decoration: underline;

}

.main_area {
	display: flex;
	margin: 0;
	padding: 0 clamp(0.625rem, 0.366rem + 1.105vw, 1.25rem);
	gap: clamp(0.625rem, 0.434rem + 0.816vw, 1.25rem);
		overflow-x:auto;

}

/* Products list area */
#procucts {
	min-height: 400px;
	width: 100%;
	font-size: 0.9em;
	line-height: 1.4em;
}

/* proucts list infomation area */
.plist_top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 5px;
	font-size: 1.1em;
	align-items: center;
}

.plist_top_result {
	margin-right: auto;
}

.plist_top_result span {
	font-size: 2em;
	line-height:1.2em;
	font-weight: bold;
}

/* proucts list area */
.prod_area {
	display: flex;
	gap: 5px 2%;
	flex-wrap: wrap;
	padding: 15px;
	border-radius: 6px;
	border: 1px solid #ddd;
	font-size: 1.1em;
	background-color: #fff;
	margin-bottom: 20px;
	position: relative;
}

.prod_title {
	font-size: 20px;
}


.prod_img {
	width: 21%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.prod_info1 {
	width: 38%;
	font-size: 12px;
}

.prod_info2 {
	width: 37%;
	font-size: 12px;
}

@media screen and (max-width: 600px) {
	.prod_info1 {
		width: 76%;
	}

	.prod_info2 {
		margin-left: 21%;
		width: 76%;
	}
	.resetbt {font-size:11px;}

}

.prod_info2_sub-title {
	font-weight: 600;
	margin-bottom: 5px;
}

.prod_info2_sub-title span a {
	color: #285db7;
}

.plist_top_btn,
.plist_top_btn_content {
	display: flex;
	align-items: center;
	gap: 10px;
}

/* Procuct comment */
.comment1 {
	width: 100%;
	font-size: 14px;
	margin: 0px 0px 4px 0;
	color: #2f67c8;
	font-weight: bold;
}

/* product sepc infomation */
.pmenu_s {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	line-height: 1.2em;
	letter-spacing: 0.05em;
}

.pmenu_s dt {
	width: 30%;
	font-weight: 600;
	margin: 0;
	padding: 5px 0;
	color: #2f67c8;
	border-bottom: 1px dashed #ccc;
	vertical-align: middle;
	font-size: 11.5px;
}

.pmenu_s dl {
	width: calc(70% - 20px);
	margin: 0;
	padding: 5px 10px 5px 10px;
	border-bottom: 1px dashed #ccc;
	vertical-align: middle;
}

/* product list table*/
.table1 {
	margin: 0px 0px 20px 0px;
	padding: 0;
	font-size: 10px;
	border-collapse: collapse;
	width: 100%;
}

/*f1f4f9*/
.table1 th {
	margin: 0;
	padding: 2px;
	background-color: #f1f4f9;
	font-weight: 500;
	border: 2px solid #fff;
}

.table1 td {
	margin: 0;
	padding: 2px;
	background-color: #fff;
	text-align: center;
	border: 2px solid #f1f4f9;
}

/* product sepc infomation text area */
.smal_spc {
	display: flex;
	flex-wrap: wrap;
	margin: px;
}

/* product sepc infomation text */
.smal_spc p {
	font-size: 11px;
	font-weight: 600;
	margin: 3px 3px;
	padding: 3px 15px;
	background-color: #f0f9ff;
	border-radius: 4px;
	color: #2f67c8;
}


/* select menu style*/
.selectbox {
	display: inline-flex;
	align-items: center;
	position: relative;
}

#leftmenu_f .selectbox {
	margin: 3px 0 8px;
}

.selectbox::after {
	position: absolute;
	right: 7px;
	width: 10px;
	height: 7px;
	background-color: rgb(68, 93, 204);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
	pointer-events: none;
}

.selectbox select {
	appearance: none;
	padding: .2em calc(.4em + 16px) .2em .4em;
	border: 1px solid rgb(47, 149, 233);
	border-radius: 5px;
	background-color: #fff;
	color: #333333;
	font-size: 12px;
	cursor: pointer;
}

/* radio menu style*/
.radio-item .radio-item_d {
	margin: 4px 0 4px 0;
	padding: 1px;
	display: block;
	cursor: pointer;
	padding-left: 22px;
	position: relative;
	border-radius: 8px;
}

.radio-item:hover {
	opacity: 0.7;
	background-color: rgb(200, 225, 247);
}

.radio-item::before,
.radio-item::after {
	content: "";
	display: block;
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}

.radio-item::before {
	background-color: #fff;
	border: 1px solid rgb(47, 149, 233);
	height: 12px;
	width: 12px;
	left: 5px;
}

.radio-item::after {
	background-color: rgb(68, 93, 204);
	opacity: 0;
	height: 8px;
	width: 8px;
	left: 8px;
}

input[type="radio"]:checked+.radio-item::after {
	opacity: 1;
}

/* checkbox menu style*/
.checkbox-item_b {
	margin: 4px 0 4px 0;
	padding: 1px;
	display: block;
	cursor: pointer;
	padding-left: 22px;
	position: relative;
	border-radius: 8px;
}

.checkbox-item_b:hover {
	opacity: 0.7;
	background-color: rgb(200, 225, 247);
}

.checkbox-item_b::before,
.checkbox-item_b::after {
	content: "";
	display: block;
	position: absolute;
}

.checkbox-item_b::before {
	background-color: #fff;
	padding: 3px;
	border-radius: 3px;
	border: 1px solid rgb(68, 93, 204);
	width: 6px;
	height: 6px;
	transform: translateY(-50%);
	top: 50%;
	left: 5px;
}

.checkbox-item_b::after {
	border-bottom: 2px solid rgb(68, 93, 204);
	border-left: 2px solid rgb(68, 93, 204);
	opacity: 0;
	height: 5px;
	width: 10px;
	transform: rotate(-45deg);
	top: 3px;
	left: 7px;
}

/*
input[type="checkbox"]:checked + .checkbox-item_b::after {
  opacity: 1;
}
*/
.checkbox-item{
	margin: 2px 0 2px 0;
	padding: 2px 1px;
	display: block;
	cursor: pointer;
	padding-left: 8px;
	border-radius: 8px;
	line-height: 1.3em;
}
.checkbox-item_d {
	margin: 2px 0 2px 0;
	padding: 2px 1px;
	display: block;
	padding-left: 8px;
	border-radius: 8px;
	line-height: 1.3em;
}

.checkbox-item:hover {
	opacity: 0.9;
	background-color: #ECF7FF;
}


.checkbox-item-icon {
	font-size: 1.2em;
	color: rgb(68, 93, 204);
}

.checkbox-item-icon_n {
	font-size: 1.2em;
	color: rgb(91, 156, 213);
}

/* selected itmem back color */
.item-selectback {
	cursor: pointer;
	background-color: #edf7ff;
}

/* IP range menu*/

.ip-area-curr {
	background-color: #fff;

}

.ip-area {

	background-color: #fff;
	min-width: 272px;
}

.ip-area_e {
	background-color: #fff;
	max-width: 450px;
	margin-bottom: 8px;
}

.ip-title {
	width: 100%;
	font-weight: bold;
}

.ip-body {
	width: 100%;
}

.ip-titlee {
	width: 30%;
	margin: 0;
	padding: 0;
}

.ip-bodye {
	width: 50%;
}

@media screen and (max-width: 800px) {
	.ip-area {
		margin-bottom: 10px;
	}

	.ip-title {
		margin: 0;
		padding: 0;
	}
}

@media screen and (max-width: 600px) {
	.btarea_base {
		flex-wrap: wrap;
	}

	.tmenu_title {
		margin: 0px 0px 10px 0px;
		width: 100%;
	}

	.bt {
		padding: 4px 12px 5px 12px;
	}

	.topmenu {
		padding: 15px;
		font-size: 12px;
		line-height: 1;
	}
.ip-titlee {
	width: 100%;
	margin: 0;
	padding: 0;
}
.ip-bodye {
	width: 100%;
}
}

/*Slider menu*/
.slidertitle {
	margin: 0;
	padding: 0;
}

.sdh {
	border-radius: 8px;
}

.sdh a {
	display: block;
	margin: 2px 0;
	padding: 2px 0;
	height: 16px;
	border-radius: 8px;
	width: 100%;
	text-decoration: none;
	color: #666;
}

.sdh a:hover {
	opacity: 0.7;
	background-color: rgb(200, 225, 247);
}

.ip-style {
	/*appearance:none;*/
	margin-left: 4%;
}

/*App link menu*/
.appmenulink {
	display:block;
	margin: 8px 0px 8px 8px;
	line-height:1em;
}

.appmenulink a {
	color: #2E67C8;
}

.appmenulink a:hover {
	opacity: 0.7
}

/* Products under comment*/
.prod_comment {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;

}

.prod_comment li {
	list-style-type: none;
	padding: 2px 0;
	margin: 0px 4px;
}

/* remodal daialog*/
.remodal-overlay {
	background: rgba(43, 46, 56, 0.15);
}

.remodalss {
	width: 320px;
	background-color: #fff;
}

.remodals {
	max-width: 450px;
	width:90%;
	background-color: #fff;
}


.remodaln {
	width: 640px;
	background-color: #444;
}

.remodaln2 {
	width: 640px;
	background-color: #fff;
}

.remodalu {
	width: 580px;
	background-color: #fff;
}

.modal-dialog {
	border-radius: 6px;
	box-shadow: 2px 2px 3px #888;
}

/* help infomation area */
.help_c {
	width: 90%;
	border: 1px solid #484;
	background-color: #efe;
	border-radius: 4px;
	margin: 2px;
	padding: 4px;
	font-size: 0.8em;
}

.remodal-content {
	margin: 0;
	padding: 0 12px;
	font-size: 1.1em;
}

/* help title */
h3 {
	margin: 2px 0 4px 0;
	border-bottom: 1px solid #aaa;
	text-align: center;
	font-weight: bold;
	font-size: 1.2em;
}

/* help infomation area hide */
.hnone {
	display: none;
}

.topmenu_show {
	width: 100%;
	max-width: 940px;
	padding-bottom: 10px;
}

#leftmenu_m {
	margin-right: 10px;
}

.helpcursor {
	cursor: help;
}

.iconbt {
	display: block;
	padding: 5px 8px 5px 8px;
	border: 1px solid #285db7;
	border-radius: 4px;
	color: #285db7;
	background-color: #fff;
	font-size: 11px;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	width: fit-content;
}

.iconbt_area .iconbt {
	text-align: right;
}

.iconbt_area {
	position: absolute;
	bottom: 10px;
	right: 15px;
}

.iconbt img {
	height: 9px;
	margin: 0px 1px 0px 4px;
	vertical-align: baseline;
}

.iconbt:hover {
	opacity: 0.5
}

.iconbth {
	display: block;
	padding: 5px 8px 5px 8px;
	border: 1px solid #2E67C8;
	border-radius: 4px;
	color: #fff;
	background-color: #2E67C8;
	font-size: 11px;
	line-height: 9px;
	white-space: nowrap;
}

.iconbth img {
	height: 9px;
	margin: 0px 1px 0px 4px;
	vertical-align: baseline;
}

.inst-sep {
	position: relative;
	display: block;
	margin: 0 1px;
	color: #888;
	height: 25px;
}

.inst-sep.border::before {
	content: "";
	position: absolute;
	border-left: 2px solid #888;
	height: 25px;
	width: 2px;
	margin-right: 0;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

.inst-sep.kakko-after,
.inst-sep.kakko-before {
	width: 5px;
}

.inst-sep.kakko-before::before {
	content: "";
	position: absolute;
	width: 20px;
	height: 28px;
	border-radius: 50%;
	border: 2px solid #888;
	border-bottom-color: transparent;
	border-top-color: transparent;
	border-right-color: transparent;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.inst-sep.kakko-after::after {
	content: "";
	position: absolute;
	width: 20px;
	height: 28px;
	border-radius: 50%;
	border: 2px solid #888;
	border-bottom-color: transparent;
	border-top-color: transparent;
	border-left-color: transparent;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

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

	.inst-sep {
		height: 30px;
	}

	.inst-sep.border::before {
		height: 30px;
	}

	.inst-sep.kakko-after,
	.inst-sep.kakko-before {
		width: 0px;
	}

	.inst-sep.kakko-before::before {
		height: 30px;
	}

	.inst-sep.kakko-after::after {
		height: 30px;
	}
}

.floatmenu {
	margin: 0;
	padding: 0;

}

.floatmenu .topmenu {
	padding: 15px 20px;
	backdrop-filter: blur(10px);
	background-color: #ffffffc4;
	max-width: none;
	border-bottom: #c8e3f9 3px solid;
	border-radius: 0;
}

.topmenu_content .topmenu_inner {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 10px;
	margin: auto;
	justify-content: center;
}

.floatmenu-up {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
}

/* 共通 */
.respd {
	max-width: 100%;
	height: auto;
	width
	/***/
	: auto;
}