@charset "UTF-8";
:root {
   --w-main: 900px;
   --w-sub-menu: 300px;
   --contents-space:10px;
}

/* ========BASIC======== */
html {
   overflow-y:scroll;
}

body {
   margin:0;
   padding:0;
   line-height:1.6;
   letter-spacing:1px;
   font-family:"Hiragino Kaku Gothic Pro",HiraKakuPro-W3,"ヒラギノ角ゴ Pro W3","メイリオ", Meiryo,"ＭＳ Ｐゴシック",verdana,sans-serif;
   font-size:12px;
   color:#333;
   background:#fff url("../images/bg.gif") 0 105px repeat-x;
}

br {
   letter-spacing:normal;
}

a {
   color:#000;
   text-decoration:none;
}

a:hover {
   color:#999;
   text-decoration:underline;
}

img {
   border:0;
   vertical-align:bottom;
}

h1,h2,h3,h4,h5,h6 {
   margin:0;
}

/* ========TEMPLATE LAYOUT======== */
#top-border {
   height: 3px;
   background-color: #009900;
   position: sticky;
   top: 0;
   z-index: 1;
}

#top {
   margin:0 auto;
   padding:0;
   width: calc(var(--w-main) + var(--w-sub-menu) + var(--contents-space));
}

#sticky-header {
   background-color: #FFFFFF;
   position: sticky;
   top: 3px; /* top-borderの幅 */
   z-index: 1;
}

#header {
   position:relative;
}

#pr {
   position:absolute;
   left:0;
   top:0;
}

#ada8 {
	text-align:center;
}

#serch {
   position:absolute;
   top:0;
   right:0;
}

#gnavi {
   position:absolute;
   bottom:0;
   right:0;
}

#menu {
   float:left;
   width:100%;
   padding-top:10px;
   background-color: #FFFFFF;
}

#icatch {
   width:100%;
}
#icatch img {
   width: 100%;
}

#contents {
   float:left;
   width:100%;
   padding:10px 0;
   background:#fff;
}

#main {
   float:left;
   width: calc(var(--w-main) - var(--contents-space));
}
#submenu {
	float:right;
	width:var(--w-sub-menu);
}
#sub {
   float:right;
   width:var(--w-sub-menu);
}

#pageTop {
   clear:both;
}

#footMenu {
   float:left;
   width:100%;
   margin-top:10px;
}

#footer {
   clear:both;
   width:100%;
}

/* ========HEADER CUSTOMIZE======== */
#header h1 {
   margin:0;
   padding:20px 0 0 0;
   font-size:32px;
   line-height:1.0;
}

#header h1 a:hover {
   color:#009900;
}


#header #gnavi ul {
   list-style:none;

}
#header #gnavi li {
   float:left;
   margin-left:15px;
   font-size:11px;
}

#header #gnavi li a {
   display:block;
   padding-left:8px;
   background:url("../images/bg_arrow.gif") 0 50% no-repeat;
}

/* ========SERCH CUSTOMIZE======== */
#serch dt {
   float:left;
   margin:2px 0 0 0;
   padding:0;

}

#serch dd {
   float:left;
   margin:1px 0 0 10px;
   padding:0;
}


/* ========MENU CUSTOMIZE======== */
#menu ul {
   margin:0 0 1px 0;
   padding:0;
   list-style:none;
   display:flex;
}

#menu li {
   overflow:hidden;
   margin-left:-1px;
   padding:0;
   border:1px solid #CECBCE;
   border-bottom:3px solid #006600;
   background:#fff url("../images/bg_menu.gif") bottom repeat-x;
   flex: 1;
}

#menu li a {
   display:block;
   height:20px;
   padding:10px 0;
   line-height:20px;
   font-weight:bold;
   text-align:center;
   outline:none;
   color:#555;
}

#menu li a:hover {
   color:#555;
   text-decoration:none;
   background:#ffffc0;
}

#menu li.home {
   margin-left:0;
   border-left:1px solid #CECBCE;
}

#menu li.active a {
   color:#fff;
   background:#006600;
   text-decoration:none;
}

/* ========MAINCONTENTS CUSTOMIZE======== */

/*
#main a {
   color:#009900;
}
*/

#main a:hover {
   color:#990000;
   text-decoration:underline;
}

#main h2 {
   clear:both;
   margin-bottom:8px;
   padding:1px 10px;
   line-height:2.0;
   color:#fff;
   font-size:15px;
   font-weight:bold;
   background:#fff url("../images/bg_h2.gif") 100% 100% repeat-x;
}

#main h3 {
   margin-bottom:8px;
   line-height:1.8;
   font-size:14px;
   color:#006600;
   border-bottom:3px solid #006600;
}

#main h4 {
   margin-bottom:2px;
   font-size:13px;
}

#main h5 {
   margin-bottom:2px;
   font-size:13px;
}

#main h6 {
   margin-bottom:2px;
   font-size:13px;
}

#main p {
   margin:0 0 1em 0;
}

#main dt {
   margin-bottom:3px;
}

#main dd {
   padding:0;
   margin:0 0 0.5em 1em;
   padding:3px;
   background:#f1f1f1;
}


/* TOPNAVI CUSTOMIZE */
#main div.topNavi {
   overflow:hidden;
   position:relative;
   margin-left:-10px;
   margin-bottom:20px;
}

* html #main div.topNavi {
   height:1em;
   overflow:visible;
}

#main div.topNavi div.topNaviColumn {
   display:inline;
   width:270px;
   float:left;
   margin-left:10px;
   padding:0 0 2em 0;
}

#main div.topNavi h2.topNaviImg {
   margin:0;
   padding:0;
   background:none;
}

#main div.topNavi div.topNaviColumn p.detail {
   position:absolute;
   bottom:0;
   width:270px;
   text-align:right;
}

#main div.topNavi div.topNaviColumn p.detail a {
   padding:0 0 0 7px;
   background:url("../images/bg_arrow.gif") no-repeat left 50%;
}

#main div.topNavi div.topNaviColumn p.cLeft {
   right:280px;
}

#main div.topNavi div.topNaviColumn p.cRight {
   right:0;
}

/* INFORMATION CUSTOMIZE */
#main dl.information {
   margin:0;
}
#main dl.information dt {
   float:left;
   padding-top:5px;
}

#main dl.information dd {
   margin:0 0 5px 0;
   padding: 5px 0px 5px 9em;
   background:url("../images/bg_dotline.gif") 0 100% repeat-x;
}
/* 2014/10/29 アプリダウンロードリンクを右寄せにする為に追加 */
#main dl.information dd .infotext {
    text-align: left;
	float: left;
}
#main dl.information dd .dllink {
    text-align: right;
}

/*
#main dl.information green {
  color: #006600;
}
*/

#main table {
   font-size:12px;
}

#main table {
   width:525px;
   margin-bottom:20px;
   border-collapse:collapse;
   border:1px solid #999;
   border-spacing:0;
   line-height:1.8;
}

#main table th {
   padding:5px;
   border:1px solid #999;
   border-width:0 0 1px 1px;
   background:#EFEBEF;
   font-weight:bold;
   text-align:left;
}

#main table.view th {
   width:150px;
}

#main table td {
   padding:5px;
   border:1px solid #999;
   border-width:0 0 1px 1px;
   text-align:left;
}

#main table td ol {
   margin:0;
   padding:0 0 0 30px;
}

#main table td li {
   margin:0;
   padding:0;
}


/* ========SUBCONTENTS CUSTOMIZE======== */
#sub .section {
   margin-bottom:10px;
}

#sub .section green {
  color: #006600;
}

#sub h2 {
   padding:5px;
   font-size:14px;
   font-weight:bold;
   color:#fff;
   background:#6E6E6E;
}

#sub h3, #sub .toggle-icon {
   padding:5px;
   font-size:13px;
   font-weight:bold;
   background:#EFEBEF;
}

#sub ul {
   margin:0;
   padding:0;
   border:1px solid #EFEBEF;
}

#sub li {
   padding:5px;
   line-height:1.8;
   list-style:none;
   border-bottom:1px solid #E7E7EF;
}

#sub li a {
   display:block;
   padding:5px 5px 5px 15px;
   background:url("../images/bg_arrow.gif") 5px 50% no-repeat;
}

#sub li a:hover {
   display:block;
   color:#333;
   background:#EFEBEF url("../images/bg_arrow.gif") 5px 50% no-repeat;
   text-decoration:none;
}


/* ========PAGRTOP CUSTOMIZE========= */
#pageTop {
   text-align:right;
   font-size:11px;
}

#pageTop a {
   padding:0 0 0 12px;
   background:url("../images/bg_pagetop.gif") 0 50% no-repeat;
}


/* ========FOOTMENU CUSTOMIZE======== */
#footMenu ul {
   margin:5px 0;
   padding:20px 0;
   text-align:center;
   border-top:1px solid #ddd;
}

#footMenu li {
   display:inline;
   margin:0 0 0 20px;
   list-style:none;
}

#footMenu li a:hover {
   color:#666;
   text-decoration:underline;
}


/* ========FOOTER CUSTOMIZE======== */
.copyright {
   font-style:normal;
   font-size:11px;
   color:#999;
   line-height:3.0;
   text-align:center;
}

/* === ADD ===*/
.left	 {
   margin-left:15px;
}

.text-red {
   color: #FF0000;
}

ol {
   padding-left: 1.5rem;
}

.w-100, #main table.w-100 {
   width: 100%;
}

.w-fit-content, #main table.w-fit-content {
   width: fit-content;
}

.h-100 {
   height: 100%;
}
.h-max-content {
   height: max-content;
}

.cur-pointer {
	cursor: pointer;
}

.d-flex {
   display: flex;
}

.align-top {
   display: flex;
   align-items: flex-start;
}

.horizontal-scroll-list {
   display: flex;
   flex-direction: column;
   overflow: scroll;
   background-color: #EFEBEF;
}

/* === IMG ===*/
.smartphone-img {
   width: 200px;
}
.app-icon {
   width: 25px;
   vertical-align: middle;
}

/* === INPUT FORM ===*/

#ms-g-font {
    font-family: "ＭＳ　ゴシック", monospace;
}

#bg-on-color {
	background:#adff2f;
}

#bg-of-color {
	background:#ffffff;
}

/* === 製品紹介 レビュー一覧テーブル === */
.reviewheader{
	text-align:center;
}
.reviewsitename, table.header-nowrap th, .text-nowrap {
	white-space:nowrap;
}

/* === アコーディオンメニュー === */
.accordion-header {
   cursor: pointer;
   padding-bottom: 0.5rem;
   display: grid;
   grid-template-columns: 2rem 1fr;
}

.switching-target {
   display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.3s ease-out;
}

.switching-target.open {
	grid-template-rows: 1fr;
}

.switching-target-inner {
	overflow: hidden;
}

/* トグルのアイコン表示 */
.toggle-icon {
	position: relative;
}

.toggle-icon:after {
	content: '';
	display: block;
	position: absolute;
	top: 20%;
	left: 0.5rem;
	width: 10px;
	height: 10px;
	border: solid #000000;
	border-width: 2px 2px 0 0;
	transform: rotate(135deg); /* 時計回り */
	transition: .3s;
}

.toggle-icon.open:after {
	top: 35%;
	transform: rotate(-45deg); /* 半時計回り */
}

/* === テキストのXX寄せ === */
.text-left {
	text-align: left;
}

.text-center {
	text-align: center;
}

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

/* === ボーダー === */
.border-0, img.border-0, .icon-area.border-0 {
	border: 0;
}
.border-top-0, tr:first-child > th.border-top-0 {
	border-top: 0;
}
.border-1 {
	border: 1px solid;
}
.border-black {
	border-color: #000000;
}

/* === マージン・パディング === */
/* 下 */
.mb-0, .f-row.mb-0 {
	margin-bottom: 0;
}
.mb-1, .f-row.mb-1 {
	margin-bottom: 0.25rem;
}
.mb-2, .f-row.mb-2 {
	margin-bottom: 0.5rem;
}
.mb-3, .f-row.mb-3 {
	margin-bottom: 1rem;
}
.mb-4, .f-row.mb-4 {
	margin-bottom: 1.5rem;
}
.mb-5, .f-row.mb-5 {
	margin-bottom: 2rem;
}
.pb-0 {
	padding-bottom: 0;
}
.pb-1 {
	padding-bottom: 0.25rem;
}
.pb-2 {
	padding-bottom: 0.5rem;
}
.pb-3 {
	padding-bottom: 1rem;
}
.pb-4 {
	padding-bottom: 1.5rem;
}
.pb-5 {
	padding-bottom: 2rem;
}

/* 上 */
.mt-0 {
	margin-top: 0;
}
.mt-1 {
	margin-top: 0.25rem;
}
.mt-2 {
	margin-top: 0.5rem;
}
.mt-3 {
	margin-top: 1rem;
}
.mt-4 {
	margin-top: 1.5rem;
}
.mt-5 {
	margin-top: 2rem;
}
.pt-0 {
	padding-top: 0;
}
.pt-1 {
	padding-top: 0.25rem;
}
.pt-2 {
	padding-top: 0.5rem;
}
.pt-3 {
	padding-top: 1rem;
}
.pt-4 {
	padding-top: 1.5rem;
}
.pt-5 {
	padding-top: 2rem;
}

/* 左 */
.ml-1 {
	margin-left: 0.25rem;
}
.ml-2 {
	margin-left: 0.5rem;
}
.ml-3 {
	margin-left: 1rem;
}
.ml-4 {
	margin-left: 1.5rem;
}
.ml-5 {
	margin-left: 2rem;
}
.pl-1 {
	padding-left: 0.25rem;
}
.pl-2 {
	padding-left: 0.5rem;
}
.pl-3 {
	padding-left: 1rem;
}
.pl-4 {
	padding-left: 1.5rem;
}
.pl-5 {
	padding-left: 2rem;
}

/* 右 */
.mr-1 {
	margin-right: 0.25rem;
}
.mr-2 {
	margin-right: 0.5rem;
}
.mr-3 {
	margin-right: 1rem;
}
.mr-4 {
	margin-right: 1.5rem;
}
.mr-5 {
	margin-right: 2rem;
}
.pr-1 {
	padding-right: 0.25rem;
}
.pr-2 {
	padding-right: 0.5rem;
}
.pr-3 {
	padding-right: 1rem;
}
.pr-4 {
	padding-right: 1.5rem;
}
.pr-5 {
	padding-right: 2rem;
}

/* オート */
.mt-auto {
	margin-top: auto;
}
.mb-auto {
	margin-bottom: auto;
}
.m-auto {
	margin: auto;
}
.ml-auto {
	margin-left: auto;
}
.mr-auto {
	margin-right: auto;
}

/* 全方向 */
.p-0 {
	padding: 0;
}
.p-1 {
	padding: 0.25rem;
}
.p-2 {
	padding: 0.5rem;
}
.p-3 {
	padding: 1rem;
}
.p-4 {
	padding: 1.5rem;
}
.p-5 {
	padding: 2rem;
}
.m-0 {
	margin: 0;
}
.m-1 {
	margin: 0.25rem;
}
.m-2 {
	margin: 0.5rem;
}
.m-3 {
	margin: 1rem;
}
.m-4 {
	margin: 1.5rem;
}
.m-5 {
	margin: 2rem;
}