@charset "utf-8";

/* -----reset--------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
	letter-spacing:-0.5em;
}
li {
	letter-spacing:normal;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ------------------------------------------------------ */


@media print, screen and (min-width:961px){
* {
	font-style:normal;
	font-weight:normal;
	box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box;
	}

html {
  font-size: 62.5%; /*font-size:10px;*/
  -webkit-text-size-adjust: 100%;
  }

body {
	color: #000;
	margin: 0;
	padding: 0;
	font-size:1.6rem; /*font-size:12px;*/
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}

a { color:#000; text-decoration:none; }
a:hover { color:#54bbff; }
a.gray { color:#aaa; text-decoration:none; }

img { max-width:100%; height:auto; }

button { border:0; padding:0; background:none; cursor:pointer; }
	
.left { float:left; }
.right { float:right; }
.center { text-align:center; }
.tright { text-align:right; }
.tleft { text-align:left; }

.fs10 { font-size:1.0rem; }
.fs12 { font-size:1.2rem; }
.fs14 { font-size:1.4rem; }
.fs16 { font-size:1.6rem; }
.fs18 { font-size:1.8rem; }
.fs20 { font-size:2.0rem; }
.fs22 { font-size:2.2rem; }
.fs28 { font-size:2.8rem; }

.f_bold { font-weight:bold; }
.tline { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }

.lh180 { line-height:180%; }

.red { color:#cc0000; }
.green { color:#009933; }

.mt50 { margin-top:50px; }
.plr20 { padding:0 20px; }

pre { white-space: pre-wrap; word-wrap: break-word; overflow: visible;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", YuGothic Medium, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	}

table, caption, tbody, tfoot, thead, tr, th, td { vertical-align:middle; }

/* ------------------------------------------------------ */

#wrapper {
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	background-color:#fff;
	}

header {
	margin:0;
	padding:0;
	}
	header div.header { width:100%; max-width:1200px; margin:0 auto; padding:25px 0; position:relative; }
	header div.header h1 { position:absolute; top:27px; left:5px; }
	header div.header ul { text-align:right; margin-right:5px; }
	header div.header li { display:inline-block; margin-left:50px; vertical-align:top; padding-top:10px; font-size:1.4rem; }
		header div.header li i { margin-right:5px; }
		header div.header li:last-child { padding-top:0; }
		header div.header li a:hover { color:#5b7bbe; }
	label.toggle { display:none; }

nav { border-top:1px solid #e0e0e0; border-bottom:1px solid #e0e0e0; width:100%; text-align:center; position:relative; height:80px; }
	nav ul { width:100%; max-width:1120px; margin:0 auto; padding:0; }
	nav li { display:inline-block; width:17%; margin:0; padding:0; text-align:center; font-size:1.6rem; white-space:nowrap; }
		nav li:nth-child(4) { width:10%; }
		nav li:nth-child(5) { width:22%; }
	nav a { padding:30px 0; display:block; text-decoration:none; }
	nav li i { margin-right:5px; }

.sortimo { position:absolute; top:79px; left:0; width:100%; display:none; z-index:111; padding:5px 0; background-color:#333333; text-align:center; height:60px; }
.sortimo ul { min-width:1120px; text-align:left; }
.sortimo li { display:inline-block; font-size:1.2rem; width:auto !important; text-align:left; margin-right:35px; }
.sortimo li a { padding:18px 0; color:#fff !important; }

.company { position:absolute; top:79px; left:0; width:100%; display:none; z-index:112; padding:5px 0; background-color:#333333; text-align:center; height:60px; }
.company ul { min-width:1120px; text-align:left; }
.company li { display:inline-block; font-size:1.2rem; width:auto !important; text-align:left; margin-right:35px; }
.company li a { padding:18px 0; color:#fff !important; }

.itemcateon a.open { color:#54bbff; }
.itemcate { position:absolute; top:79px; left:0; width:100%; display:none; z-index:110; padding:5px 0; background-color:#333333; text-align:center; height:75px; }
.itemcate ul { min-width:1120px; }
.itemcate li { display:inline-block; font-size:1.2rem; width:auto !important; text-align:left; margin-right:18px; }
.itemcate li a { color:#fff !important; }

.submenu { display:none; }
.submenu { position:absolute; top:75px; left:0; background-color:#333333; width:100%; border-top:1px solid #434343; z-index:108; }
.accordionmenu .pullmenu,
.accordionmenu li a { cursor: pointer; padding:10px 4px 5px 0; color:#fff !important; border-bottom:3px solid #333333; }
.accordionmenu .pullmenu:hover,
.accordionmenu .pullmenu:active,
.pullmenu.open,
.accordionmenu li a:hover { color:#fff; border-bottom:3px solid #0066cc; }

.submenu table { width:100%; max-width:1200px; margin:0 auto; padding:10px; }
.submenu th { width:200px; letter-spacing:normal; vertical-align:top; text-align:left; line-height:120%; }
	.submenu th img { max-width:200px; height:auto; margin-bottom:20px; }
	.submenu th a { color:#fff; font-size:1.4rem; }
	.submenu th i { margin-right:5px; }
.submenu td { vertical-align:top; text-align:left; }
.submenu td ul { display:inline-block; width:23% !important; min-width:inherit; vertical-align:top; margin:10px 0 10px 2%; }
.submenu td ul li { display:block; white-space:normal; line-height:130%; }
	.submenu td ul li.itemtit { margin-top:20px; color:#fff; padding-bottom:3px; }
	.submenu td ul li.itemtit:before { content:'■'; margin-right:5px; }
	.submenu td ul.part3 { width:27% !important; }
	.submenu td ul.catemenu { width: 30% !important; margin:30px 0 10px 3% !important; }
.submenu td ul li a { padding:3px 0 !important; color:#fff !important; border:0 !important; }
.submenu td ul li a:hover { color:#bbb !important; }

.submenu div.catelist { letter-spacing: normal; background-color: #434343; }
	.submenu .catelist a { color: #fff; padding: 15px 0 !important; }
	.submenu .catelist a:hover { color: #0066cc !important; }
.submenu .catelist i { margin-right:8px; }
.submenu ul.menu-thum { text-align: left; margin:15px auto 20px auto !important; }
.submenu ul.menu-thum li { display: inline-block; width: 19% !important; white-space: normal; margin-right: 1.25%; vertical-align: top; height:50px; }
	.submenu ul.menu-thum li:nth-child(5n) { margin-right: 0 !important; }
.submenu ul.menu-thum li img { width: 40px; height: 40px; border-radius:100px; margin-right: 15px; }
.submenu ul.menu-thum li a { display: table; }
.submenu ul.menu-thum li a span { display: table-cell; vertical-align: middle; }
.submenu ul.menu-thum li a span:nth-of-type(1) { width: 50px; }
.submenu ul.menu-thum li a:hover { color: #0066cc !important; border-bottom:3px solid #333333; }

.itemsearch { width:100%; padding:15px; background-color:#e3e3e3; text-align:center; font-size:1.4rem; }
.itemsearch span { display:inline-block; margin-right:10px; }
.itemsearch span.inputtxt { background-color:#fff; width:220px; border-radius:100px; }
.itemsearch input.items { border:none; padding:3px 5px; width:90%; }

footer {
	margin:0;
	padding:50px 0 0 0;
	}
	footer .service { width:100%; max-width:1120px; margin:0 auto; padding:0; }
	footer dl { display:inline-block; width:45%; margin:0 2%; }
	footer dt { background-color:#0066cc; color:#fff; font-size:2.8rem; text-align:center; padding:25px 0 18px 0; border-bottom:8px solid #0029a3; }
		footer dt span { font-size:1.4rem; }
	footer dd { background-color:#f2f2f2; padding:30px 0 25px 0; text-align:center; font-size:3.6rem; font-weight:bold; }
		footer dd span { font-size:2.0rem; font-weight:normal; }
	
	footer .service ul { margin:40px 2%; }
	footer .service li { line-height:180%; }
	footer .service li a { color:#0066cc; }
	footer .service li:before { content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:900; margin-right:10px; color:#0066cc; }
	
	footer .link { background-color:#eee; width:100%; padding:15px 0; height:45px; position:relative; }
	footer .link ul { width:98%; max-width:1120px; margin:0 auto; padding:0; }
	footer .link li { display:inline; font-size:1.4rem; margin-right:50px; }
	footer .link li a { color:#666; }
	footer .link li i { margin-right:5px; }
	footer .link a.up { display:block; position:absolute; top:0; right:0; width:45px; height:45px; padding-top:8px;
				text-align:center; font-size:3.0rem; background-color:#959595; color:#fff; }
	footer .link a:hover.up { color:#555; }
	
	footer #footer { background-color:#333; padding:40px 0 100px 0; }
	footer .footer { width:98%; max-width:1120px; margin:0 auto; position:relative; }
	footer .footer p { font-size:1.2rem; color:#eee; padding:10px 0; line-height:150%; }
	footer .footer p.copyr { position:absolute; top:0; right:0; font-size:1.0rem; color:#999; }
	footer .footer p.sns { position:absolute; top:-10px; left:500px; font-size:1.8rem; font-weight:bold; }
	footer .footer p.sns img { height:30px; width:auto; margin:0 10px; vertical-align:middle; }
	
.sp { display:none; }
	
#main { width:98%; max-width:1200px; margin:0 auto; padding:60px 0 0 0; }

.contents { width:96%; max-width:1000px; margin:0 auto; position:relative; padding-bottom:80px; min-height:250px; font-size:1.5rem; }

.clr { clear:both; }


/* --------------------------------------------------------------
  MENU
-------------------------------------------------------------- */
#menu, #open { display: none; }


/* --------------------------------------------------------------
  clearfix
-------------------------------------------------------------- */
#topinfo dl:after,
.newsc:after,
#topconcept:after,
footer .sitemap:after,
.contents:after,
dl.sortimo dd:after,
dl.quotation dd:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
  }

/* --------------------------------------------------------------
  トップページ
-------------------------------------------------------------- */

.topmain { background-color:#000; text-align:center; }

#topinfo { width:98%; max-width:1120px; margin:70px auto; position:relative; }
#topinfo h3 { position:absolute; top:15px; left:0; font-size:2.5rem; letter-spacing:0.1em; }
#topinfo ul { margin:0 0 0 200px; }
#topinfo li { border-bottom:1px solid #ccc; line-height:125%; padding:15px 3px; }
	#topinfo li span.date { color:#999; display:inline-block; width:150px; }
	#topinfo li span.ncate { display:inline-block; text-align:center; padding:2px; line-height:110%; margin-right:25px;
			font-size:1.0rem; color:#3399cc; border:1px solid #3399cc; width:80px; }

#topitemcate { width:100%; background:url(/images/topitem_bg.png) top center repeat-x; padding:70px 0 80px 0; } 
#topitemcate h2 { font-size:2.8rem; text-align:center; line-height:120%; }
#topitemcate h2 span { font-size:1.4rem; }
#topitemcate ul { width:98%; max-width:1120px; margin:40px auto; }
#topitemcate li { display:inline-block; width:19.2%; background-color:#fff; margin-right:1%; margin-bottom:10px; padding:10px 2px 10px 10px; border:1px solid #eee; }
	#topitemcate li:nth-child(5n) { margin-right:0; }
#topitemcate li a { color:#0066cc; font-size:1.4rem; }
#topitemcate li i { margin-right:5px; }
#topitemcate li img { width:100%; max-width:200px; margin:0 auto; display:block; margin-bottom:8px; }

/* --------------------------------------------------------------
  基本
-------------------------------------------------------------- */

a.btn { display:block; width:280px; margin:40px auto; padding:15px 5px !important; background-color:#000; text-align:center; color:#fff; font-size:1.4rem; }
a.btn i { margin-right:5px; }
a:hover.btn { color:#3399cc; }

a.btn2 { display:block; width:280px; margin:10px auto; padding:15px 5px !important; background-color:#000; text-align:center; color:#fff; font-size:1.4rem; }
a.btn2 i { margin-right:5px; }
a:hover.btn2 { color:#3399cc; }

.userbtn { background-color:#eee; padding:20px 0; margin:20px 0; }

ul.pankuzu { margin:10px 0; font-size:1.4rem; color:#999; }
ul.pankuzu li { display:inline; padding:0; }
	ul.pankuzu li:after { content:'\f054'; font-family:"Font Awesome 5 Free"; font-weight:900; margin:0 15px; }
	ul.pankuzu li:last-child:after { display:none; }
ul.pankuzu li a { color:#999; }

.breadcrumbs { margin:10px 0; font-size:1.4rem; color:#999; }
.breadcrumbs span.break { padding:0 15px; }
.breadcrumbs a { color:#999; }

a.arw { color:#0066cc; }
a.arw:hover { text-decoration:none; }
a.arw:before { content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:900; margin-right:10px; color:#0066cc; text-decoration:none; }

ul.disc { margin:20px; }
ul.disc li { list-style-type:disc; line-height:180%; margin:10px 0; }
	td ul.disc { margin:0 20px !important; }

ol { margin:20px; }
ol li { list-style-type:decimal; padding:0 0 15px 0; line-height:160%; }
ol li p { margin:5px 0 !important; }

ul ol { margin:0 20px !important; }
ul ol li { list-style-type:decimal !important; padding:0 0 5px 0 !important; line-height:160% !important; }

ul.alpha { margin:20px; }
ul.alpha { list-style-type:upper-alpha; line-height:160%; margin:10px 0; }

ul ol ul { margin:0 20px !important; }
ul ol ul li { list-style:none !important; }

ul ol ul.alpha { margin:0 20px !important; } 
ul ol ul.alpha li { list-style-type:lower-alpha !important; padding:0 0 5px 0 !important; line-height:150% !important; }

ul ol ul ul.alpha { margin:0 40px !important; } 

ul.pagelink { margin:20px 0; padding:15px; text-align:right; font-size:1.2rem; background:#efefef; }
ul.pagelink li { display:inline-block; width:auto; margin-left:25px; }
ul.pagelink li i { margin-right:5px; }

div.attention { width:96%; max-width:860px; margin:60px auto; padding:15px 5px; text-align:center; border:3px solid #ccc; color:#cc0000; font-size:1.8rem; font-weight:bold; }
div.attention p { font-size:1.8rem !important; }

div.attention2 { width:96%; max-width:860px; margin:60px auto 20px auto; padding:15px 5px; text-align:center; background-color:#eeeeee; }
div.attention2 p.centerinfo { font-size:3.0rem; font-weight:bold; text-align:center; }
div.attention2 p.centerinfo span { color:#0066cc; }
div.attention2 p.reception { border-top:1px solid #ccc; max-width:760px; margin:0 auto; padding:15px; }

table.about { width:100%; max-width:900px; font-size:1.4rem; margin:20px auto; }
table.about th { background-color:#f2f2f2; padding:20px 30px; font-weight:bold; text-align:left; vertical-align:top; border-bottom:1px solid #ccc; border-top:1px solid #ccc; }
table.about td { padding:20px 40px; border-bottom:1px solid #ccc; border-top:1px solid #ccc; }

table.catalog { width:80%; max-width:900px; margin:40px auto; border:1px solid #ddd }
table.catalog td { padding:20px; font-size:1.3rem; }
	table.catalog td:nth-child(1) { min-width:120px; max-width:180px; }
	table.catalog td:nth-child(3) { min-width:152px; }

div.block { border-top:1px solid #ccc; }
div.block h4:before { content:'●'; color:#3399cc; font-size:1.5rem; }

img.imgr { float:right; max-width:45%; height:auto; margin-left:20px; }
img.imgl { float:left; max-width:45%; height:auto; margin-right:20px; }

ul.line2 { margin:20px 0; }
ul.line2 li { display:inline-block; width:48%; margin:5px 1%; text-align:center; vertical-align:top; }
ul.line2 li p { text-align:left; margin:10px 0 !important; }
ul.line2 li h4 { background-color:#ccc; text-align:center; padding:10px !important; font-size:1.8rem !important; margin-top:40px !important; }

ul.line3 { margin:20px 0; }
ul.line3 li { display:inline-block; width:33.333%; padding:5px 1%; text-align:center; vertical-align:top; }
ul.line3 li p { text-align:left; margin:10px 0 !important; }

ul.line4 { margin:20px 0; }
ul.line4 li { display:inline-block; width:25%; padding:5px 1%; text-align:center; vertical-align:top; }

.news a { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }

#news ul { margin:0 0 0 200px; }
#news li { border-bottom:1px solid #ccc; line-height:125%; padding:15px 3px; }
	#news li span.date { color:#999; display:inline-block; width:150px; }
	#news li span.ncate { display:inline-block; text-align:center; padding:2px; line-height:110%; margin-right:25px;
			font-size:1.0rem; color:#3399cc; border:1px solid #3399cc; width:80px; }

/* --------------------------------------------------------------
  固定ページ
-------------------------------------------------------------- */

.pages h2 { font-size:2.8rem; font-weight:bold; padding:20px 0; margin:20px 0; position:relative;  }
	.pages h2 img { width:auto; height:30px; vertical-align:bottom; margin-left:8px; }
	.pages h2 span { position:absolute; right:0; }
	.pages h2.vidmar { border-bottom:1px solid #333; }
.pages h3 { font-size:2.1rem; font-weight:bold; border-bottom:4px solid #eee; padding:20px 5px; margin:40px 0 20px 0; position: relative; }
	.pages h3:after { content:""; display:block; line-height:0; position:absolute; left:0; bottom:-4px; width:60px; border-bottom:4px solid #3399cc; }
.pages h4 { font-size:2.0rem; font-weight:bold; padding:20px 5px; margin:20px 0; }
	
.pages p { line-height:180%; margin:20px 0; }

ul.history { width:100%; max-width:900px; margin:20px auto; border-top:1px solid #ccc; border-bottom:1px solid #ccc; padding:50px 15px; }
ul.history li { background:url(/images/history_bg.png) no-repeat left 5px; padding:0 0 30px 40px; line-height:120%; }
ul.history li span { display:inline-block; vertical-align:top; }
ul.history li span:nth-of-type(1) { width:80px; font-weight:bold; }
ul.history li span:nth-of-type(2) {}

ul.qa { width:90%; max-width:860px; margin:50px auto; border-top:1px solid #ccc; border-bottom:1px solid #ccc; padding:30px 2px; }
ul.qa li { font-size:1.6rem; line-height:160%; padding:8px 0; }
	ul.qa li:before { content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:bold; margin:0 5px 0 0; font-size:1.5rem; color:#0066cc; }
ul.qa li a { color:#0066cc; border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }

p.qa { width:90%; max-width:860px; margin:auto; padding:20px 0; }
p.qa a { color:#0066cc; border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }

div.qa { width:90%; max-width:860px; margin:auto; padding:20px 0; }
div.qa dl { margin:0; padding:30px 0; }
div.qa dt { font-size:1.7rem; padding:5px 0 20px 38px; line-height:160%; border-bottom:1px dotted #b2b2b2; background:url(/images/qa_q.png) no-repeat left 5px; }
div.qa dd { font-size:1.4rem; padding:5px 0 40px 38px; margin:30px 0 0 0; line-height:160%; border-bottom:1px solid #b2b2b2; background:url(/images/qa_a.png) no-repeat left 5px; }
div.qa dd a { color:#0066cc; border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }
div.qa dd i { color:#0066cc; margin-right:8px; }

p.sortimotit { text-align:center; font-size:1.8rem; font-weight:bold; padding:5px; background-color:#ccc; margin-top:50px; }

ul.productlist { margin:20px 0; }
ul.productlist li { margin:10px 0; height:180px; vertical-align:middle; }
ul.productlist a li { display:block; background-repeat:no-repeat; background-position:15px; border:1px solid #ddd; }
ul.productlist a:hover li { background-color:#efefef; color:#000; }
	ul.productlist a li p { padding:15px 10px 0 200px; }
	ul.productlist li img.logo { width:auto; max-height:30px; }

dl.sortimoproduct { margin:20px 0 40px 0; padding:20px 0; border-bottom:1px solid #333; }
dl.sortimoproduct dt { float:left; width:300px; line-height:180%; }
dl.sortimoproduct dt img { max-width:300px; }
dl.sortimoproduct dd { margin-left:350px; line-height:140%; padding-top:15px; }

.productindex { margin:50px 0; }
.productindex dl { display:inline-block; width:33%; vertical-align:top; }
.productindex dt { text-align:center; padding:20px 10px; border:1px solid #ccc; margin-right:8px; min-height:360px; }
.productindex dt img { width:90%; max-width:300px; height:auto; }
.productindex dt h4 { font-size:2.1rem; text-align:left; padding-left:10px; line-height:120%; margin:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
.productindex dd { padding:5px; }
.productindex dd ul { margin:15px 0; }
.productindex dd li { font-size:1.7rem; line-height:120%; padding:5px 0; }
.productindex dd li a { color:#0066cc; }
.productindex dd li a:before { content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:700; margin-right:8px; }

dl.cs { margin:10px 0; line-height:180%; }
dl.cs dt { font-weight:bold; color:#0066cc; }
dl.cs dd { padding:5px 0 20px 20px; }

ul.userflow { margin:20px 0 40px 0; display:table; width:100%; }
ul.userflow li { display:table-cell; width:18%; border:1px solid #ccc; border-radius:10px; text-align:center; vertical-align:middle; font-size:1.3rem; background-color:#eee; padding:10px 0; line-height:130%; }
ul.userflow li.active { background-color:#3399cc; color:#fff; }
ul.userflow li.arw { width:2.5%; border:0; font-size:2.0rem; background-color:#fff; }

ul.userflow2 { margin:20px 0 40px 0; display:table; width:100%; }
ul.userflow2 li { display:table-cell; width:15%; border:1px solid #ccc; border-radius:10px; text-align:center; vertical-align:middle; font-size:1.3rem; background-color:#eee; padding:10px 0; line-height:130%; }
ul.userflow2 li.active { background-color:#3399cc; color:#fff; }
ul.userflow2 li.arw { width:2.0%; border:0; font-size:2.0rem; background-color:#fff; }

.agreeform { margin:50px 0; }
.agreeform label { margin:0 10px; }
.agreeform input[type="button"] { padding:10px 30px; border:none; background-color:#000; color:#fff; }
.agreeform input[type="button"][disabled] { background-color:#ddd; }

.register2, .register3 { margin:80px 0; }
.register2 table, .register3 table { width:100%; margin:15px 0; }
.register2 th, .register3 th { width:280px; vertical-align:top; padding:25px 15px; text-align:left; border-top:1px solid #ddd; border-bottom:1px solid #ddd; line-height:120%; }
.register2 td, .register3 td { padding:25px 15px; vertical-align:bottom; border-top:1px solid #ddd; border-bottom:1px solid #ddd; position:relative; line-height:120%; }
.register2 td p { margin:8px 0 !important; padding:0 !important; line-height:120%; font-size:1.4rem; }
.register3 td p, .register3 td span.red, .register3 .attention2, .register3 p.formtxt { display:none; }

input, select { margin-bottom:5px; }

.mw_wp_form .error { position:absolute; top:5px; left:15px; font-size:1.3rem !important; color:#0066CC !important; }
.formbtn { text-align:center; padding:40px 0; }
input.submitbtn { background-color:#000; color:#fff; padding:20px 40px; margin:0 20px; border:0; }
input.backbtn { background-color:#ccc; color:#555; padding:20px; margin:0 20px; border:0; }

ul.catalog { margin:20px 0; text-align:center; }
ul.catalog li { display:inline-block; width:33.333%; padding:5px 1%; text-align:center; vertical-align:top; }
ul.catalog h3 { font-size:1.6rem; font-weight:bold; border-bottom:4px solid #eee; padding:10px 5px; margin:40px 0 20px 0; text-align:left; }

ul.catalog2 { margin:20px 0; }
ul.catalog2 li { display:inline-block; width:48%; margin:5px 1%; vertical-align:top; }
ul.catalog2 h3 { font-size:1.6rem; font-weight:bold; border-bottom:4px solid #eee; padding:10px 5px; margin:40px 0 20px 0; text-align:left; }

dl.quotation { border-top:1px dashed #ccc; padding:30px 0; }
dl.quotation dt { float:left; width:200px; text-align:center; padding-top:10px; }
dl.quotation dd { margin:0 0 0 250px; }
dl.quotation dd ul.disc { margin-top:0 !important; }
dl.quotation dd ul.disc li { line-height:120% !important; }
dl.quotation dd table { width:100%; margin:20px 0; font-size:1.4rem; }
dl.quotation dd th, dl.quotation dd td { padding:8px; border:1px solid #999; line-height:160%; text-align:center; }
dl.quotation dd th { background-color:#c7e5f7; }

dl.privacy { margin:50px 0; }
dl.privacy dt { font-weight:bold; padding:10px 0; }
dl.privacy dd { padding:0 0 20px 20px; line-height:140%; }

div.privacy { width:100%; margin:30px 0; padding:10px 15px; background-color:#eeeeee; }

ul.search_results { margin:30px; font-size:1.8rem; }
ul.search_results li { margin:10px 0; line-height:150%; }
ul.search_results li i { margin-right:15px; }

table.repair { width:100%; font-size:1.4rem; margin:20px auto; }
table.repair th { background-color:#f2f2f2; padding:20px 30px; font-weight:bold; text-align:center; vertical-align:top; border:1px solid #ccc; }
table.repair td { padding:20px 40px; border-bottom:1px solid #ccc; border-top:1px solid #ccc; border:1px solid #ccc; text-align:center; }
table.repair td:nth-child(1) { text-align:left; }


/* --------------------------------------------------------------
  製品情報
-------------------------------------------------------------- */

.itempage h2 { font-size:2.8rem; font-weight:bold; border-bottom:1px solid #707070; padding:20px 5px; margin:20px 0;  }
.itempage h4 { font-size:2.1rem; font-weight:bold; border-bottom:4px solid #eee; padding:20px 5px; margin:20px 0; position: relative; }
	.itempage h4:after { content:""; display:block; line-height:0; position:absolute; left:0; bottom:-4px; width:300px; border-bottom:4px solid #3399cc; }
.itempage h5 { font-size:2.1rem; font-weight:bold; padding:20px 5px 10px 5px; }

.itempage ul.itemnavi { margin:0; }
.itempage ul.itemnavi li { display:inline-block; width:auto; text-align:center; font-size:1.7rem; margin-right:5px; margin-bottom:5px; min-width:150px; }
.itempage ul.itemnavi li a { display:block; border:1px solid #999; background-color:#eee; padding:5px 12px; }
.itempage ul.itemnavi li a.active { display:block; border:1px solid #0066cc; background-color:#0066cc; color:#fff; }
.itempage ul.itemnavi li a:before{ content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:bold; margin:0 5px 0 0; font-size:1.5rem; }

.itemphoto { width:100%; margin:50px auto; padding:15px; text-align:center; }
.itemphoto .photo { width: 625px; height: auto; margin: auto; }
.itemphoto .main { float:left; width: 500px; text-align: center; }
	.itemphoto .main img { max-width:500px; width: auto; max-height: 500px; height: auto; }
.itemphoto ul { margin-left:505px; width:120px; }
.itemphoto li { line-height:133.33333%; }
	.itemphoto li img { border: 1px solid #ddd; }
.itemphoto ul::after{ clear: both; }

.itemmovie { text-align:center; }

ul.itemdld { width:100%; margin:40px 0; }
ul.itemdld li { width:33.333%; display:inline-block; text-align:center; font-size:1.4rem; padding-bottom:20px; vertical-align:top; line-height:140%; }
ul.itemdld li img { margin-bottom:10px; max-width:150px; }
ul.itemdld li a { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; text-decoration:none; }

.itempage table.itemdetail { width:100%; margin:40px 0; }
.itempage table.itemdetail td { width:48%; padding-right:2%; vertical-align:top; }
.itempage table.itemdetail td:nth-child(2n) { padding-right:0; padding-left:2%; }
.itempage table.itemdetail td p { line-height:180%; font-size:1.4rem; }
.itempage table.itemdetail td a { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }

.itempage .spec table { width:100%; margin:10px 0 40px 0; font-size:1.4rem; }
.itempage .spec table caption { padding-bottom:8px; text-align:left; }
.itempage .spec table th, .itempage .spec table td { padding:15px; border:1px solid #999; line-height:160%; text-align:center; }
.itempage .spec table tr:nth-child(1) { background-color:#c7e5f7; }
.itempage .spec table td p { text-align:left; }

.itempage .spec table.spec2 { width:100%; margin:10px 0 40px 0; font-size:1.4rem; }
.itempage .spec table.spec2 th, .itempage .spec table.spec2 td { padding:15px; border:1px solid #999; line-height:160%; text-align:center; }
.itempage .spec table.spec2 tr:nth-child(1) { background-color:#fff !important; }
.itempage .spec table.spec2 th { background-color:#c7e5f7; }
.itempage .spec table.spec2 td p { text-align:left; }


/* --------------------------------------------------------------
  製品カテゴリー
-------------------------------------------------------------- */

.itemindex h2 { font-size:2.8rem; font-weight:bold; padding:20px 5px; margin:20px 0;  }
.itemindex dl { display:inline-block; width:33%; vertical-align:top; }
.itemindex dt { text-align:center; padding:20px 10px; border:1px solid #ccc; margin-right:8px; min-height:360px; }
.itemindex dt img { width:auto; max-width:300px; height:auto; max-height:300px; }
.itemindex dt h3 { font-size:2.1rem; text-align:left; padding-left:10px; line-height:120%; }
.itemindex dd { padding:5px; }
.itemindex dd ul { margin:15px 0; }
.itemindex dd li { font-size:1.7rem; line-height:120%; padding:5px 0; }
.itemindex dd li a { color:#0066cc; }
.itemindex dd li a:before { content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:700; margin-right:8px; }

.itemindex ul.itemnavi { margin:50px 0 50px 10px; }
.itemindex ul.itemnavi li { display:inline-block; width:auto; text-align:center; font-size:1.7rem; margin-right:5px; margin-bottom:5px; min-width:150px; }
.itemindex ul.itemnavi li a { display:block; border:1px solid #999; background-color:#eee; padding:5px 12px; }
.itemindex ul.itemnavi li a.active { display:block; border:1px solid #0066cc; background-color:#0066cc; color:#fff; }
.itemindex ul.itemnavi li a:before{ content:'\f061'; font-family:"Font Awesome 5 Free"; font-weight:bold; margin:0 5px 0 0; font-size:1.5rem; }

.itemindex dl.item { border:1px solid #ccc; width:31%; margin-left: 8px; margin-bottom: 20px; }
.itemindex dl.item dt { border: none; height: 350px; min-height: 350px; max-height: 350px; width: 100%;
	position: relative; }
.itemindex dl.item dt img { margin: auto; display: block; align-items: center; position: absolute; 
	top:0; bottom: 0; left: 0; right: 0; }
.itemindex dl.item dd { padding: 5px 5px 15px 15px; }
}