@charset "utf-8";
/* CSS Document */


/*------------------------------------------------------common layout*/

body.second  {
	margin:0;
	padding:0;
	}

body.second .content {
	width:940px;
	margin:5px 0 0 0;
	padding:0;
	}
	
body.second #footer {
	margin-top:30px;
	height:50px;
	}
		
/*------------------------------------------------------breadcrumb*/
.breadcrumb {
	padding:30px 0 0 0;
	width:940px;
	}
	
.breadcrumb ul {
	margin:0;
	padding:0;
	}
	
.breadcrumb li {
	display:inline;
	}

.breadcrumb li.gray {
	color:#999999;
	}
	

/*------------------------------------------------------software*/

/* ── ここから追加 ── */
/* ① 親コンテナを中央寄せ */
body.second .softIndex .sMenu {
    text-align: center;
}

/* ② 各メニューを float 解除＋inline-block 化 */
body.second .softIndex .sMenu .menuBox {
    float: none;               /* 左寄せを解除 */
    display: inline-block;     /* 横並びかつ text-align:center の対象に */
    vertical-align: top;       /* 高さ揃え */
    margin: 0 11px 0 0;        /* 右だけ余白、auto は除去 */
}

/* ③ 最後のメニューだけ右余白をリセット */
body.second .softIndex .sMenu .menuBox.last {
    margin-right: 0;
}
/* ── ここまで追加 ── */

body.second .softIndex .sMenu .menuBox p.txt,
body.second .softIndex .sMenu .menuBox p.link {
    text-align: left;
}

/*index*/
body.second .softIndex {
	background:url(../images/software/common/tit_software.gif) no-repeat 0 0;
	}

body.second .softIndex p.txt {
	padding:72px 50px 20px 50px;
	color:#ffffff;
	}
	
body.second .softIndex .sMenu {
	width:890px;
	margin:0 auto 45px auto;
	}
	

body.second .softIndex .sMenu .menuBox {
	width:289px;
	margin:0 auto;
	margin-right:11px;
	float:left;
	}

/* ↓ ここからセンター寄せ用の追加 */
body.second .softIndex .sMenu {
    text-align: center;
}
body.second .softIndex .sMenu .menuBox {
    float: none;             /* 左寄せ解除 */
    display: inline-block;   /* 横並びかつ中央寄せ可能に */
    vertical-align: top;     /* 高さを揃える */
    margin-right: 11px;      /* 元の間隔を維持 */
}
body.second .softIndex .sMenu .menuBox.last {
    margin-right: 0;         /* 最後の余白はリセット */
}
/* メニュー内テキストも中央寄せ */
body.second .softIndex .sMenu .menuBox p.txt,
body.second .softIndex .sMenu .menuBox p.link {
    text-align: center;
}
/* ↑ ここまで追加 */

body.second .softIndex .sMenu .menuBox a {
	color:#4281c5;
	}
	
body.second .softIndex .sMenu .menuBox img.btn {
	vertical-align:bottom;
	}
	
body.second .softIndex .sMenu .menuBox p.txt {
	padding:20px 20px 8px 20px;
	background:url(../images/software/common/bg_smenu.gif) no-repeat 0 0;
	line-height:20px;
	color:#000000;
	}
	
/* CMSテキストだけ白背景に切り替え */
body.second .softIndex .sMenu .menuBox p.link + p.txt {
    background-image: none;    /* グラデーション画像を無効化 */
    background-color: #ffffff; /* 背景を白に */
}	

/* FlexとCMS のみ大きく太字にする */
body.second .sMenu .menuBox .menu-title {
    font-size: 1.6em;    /* お好みで調整 */
    font-weight: bold;
    display: inline-block; /* 念のため */
    transform: scaleY(1.2);         /* 縦に 120% に伸ばす */
    margin: 5px 0 5px;   /* 上下の余白はお好みで調整 */
    color: #808080;
}
	
body.second .softIndex .sMenu .menuBox p.link {
	margin:0 0 0 20px;
	width:90px;
	padding:0 0 0 15px;
	background:url(../images/common/ico_blue.gif) no-repeat left;
	}

body.second .softIndex .sMenu .last {
	margin-right:0;
	}
	

/*software Detail*/
body.second .softDetail {
	width:940px;
	background:url(../images/software/common/bg_sdetail.jpg) no-repeat 0 0;
	}
	
body.second .softDetail .wrapper {
	width:880px;
	margin:0 auto;
	}

/*side*/
body.second .softDetail #side {
	width:249px;
	margin-top:14px;
	float:left;
	}	
	
body.second .softDetail #side .sideBg {
	height:350px;
	background:url(../images/software/common/bg_side.gif) no-repeat 0 0;
	}

	
/*main*/
body.second .softDetail #main {
	width:598px;
	margin-top:45px;
	float:right;
	}
	
body.second .softDetail #main p.read {
	margin:54px 0 20px 0;
	padding-bottom:24px;
	}

body.second .softDetail #main p.border {
	border-bottom:1px solid #cccccc;
	}	
	
body.second .softDetail #main h3.section-title {
    font-size: 1.8em;        /* ベースの約2倍 */
    font-weight: bold;     /* 太字 */
    margin: 30px 0 -45px;   /* 上下の余白はお好みで調整 */
    line-height: 1.2;      /* 行間を少し詰める */
    display: inline-block;          /* transform を効かせるために */
    transform-origin: center top;   /* 縦伸ばしの起点を見出しの上中央に */
    transform: scaleY(1.2);         /* 縦に 120% に伸ばす */
    color: #808080;
}

/* blueBox の直後に来る section-title の上余白を小さく */
body.second .softDetail #main .blueBox + h3.section-title {
    margin-top: 16px;  /* 元は40pxくらいでしたね。お好みで調整 */
    /* margin-bottom は既存の8pxを維持 */
}
	
body.second .softDetail #main p.download {
	margin-bottom:10px;
	line-height:14px;
	}
	

/*blueBox*/
.blueBox {
	margin-bottom:10px;
	background:url(../images/software/common/bg_bluebox.gif) repeat-y 0 0;
	}
	
.blueBox .tit {
	font-size:14px;
	line-height:21px;
	height:26px;
	padding:12px 0 0 45px;
	background:url(../images/software/common/bg_bluebox_tit.gif) no-repeat 0 0;
	}
	
.blueBox .btm {
	height:6px;
	background:url(../images/software/common/bg_bluebox_btm.gif) no-repeat 0 bottom;
	font-size:0;
	line-height:0;
	}
	
.blueBox p.txt {
	padding:0 20px 5px 20px;
	}
	
.blueBox p.red {
	color:#990000;
	}
	

/*grayBox*/
.grayBox {
	margin-bottom:10px;
	background:url(../images/software/common/bg_graybox.gif) repeat-y 0 0;
	}
	
.grayBox .tit {
	font-size:14px;
	line-height:21px;
	height:24px;
	padding:12px 0 0 45px;
	background:url(../images/software/common/bg_graybox_tit.gif) no-repeat 0 0;
	color:#999999;
	}
	
.grayBox .btm {
	height:6px;
	background:url(../images/software/common/bg_graybox_btm.gif) no-repeat 0 bottom;
	font-size:0;
	line-height:0;
	}

.grayBox p.txt {
	padding:0 20px 5px 20px;
	}
	
.grayBox p.red {
	color:#990000;
	}


/*thumbTable*/
table.thumbTb {
	width:540px;
	margin:10px auto 0 auto;
	}

table.thumbTb td {
	vertical-align:top;
	padding:0 8px 10px 0;
	text-align:center;
	}
	
table.thumbTb td.last {
	padding-right:0;
	}

.blueBox table.thumbTb td p.pictTit {
	font-size:12px;
	}
	

/*backBtn*/
.backBtn {
	margin:0;
	padding:10px 0 0 0;
	}

.backBtn p {
	border-top:1px dotted #999;
	background:url(../images/common/ico_blue.gif) no-repeat 0 15px;
	padding:10px 0 0 15px;
	}
	
body.second .softDetail #main .backBtn {
    margin-top: -10px;  /* 好きな数値に調整 */
}

/*------------------------------------------------------company*/

body.second table.companyTb {
	margin:38px 0 10px 84px;
	padding:0;
	}
	

body.second table.companyTb th {
	width:105px;
	padding:5px 0;
	text-align:left;
	}

body.second table.companyTb td p {
	padding:12px 0 12px 28px;
	border-left:1px solid #d3d3d3;
	}
	
body.second table.companyTb td ul {
	padding:12px 0 12px 28px;
	border-left:1px solid #d3d3d3;
	}
	
body.second table.companyTb td li {
	padding-left:10px;
	background:url(../images/common/ico_gray.gif) no-repeat 0 7px;
	}

body.second table.companyTb td {
	padding:8px 0;
	}
	
body.second p.ico {
	margin-left:84px;
	padding-left:15px;
	background:url(../images/common/ico_blue.gif) no-repeat 0 5px;
	}
	
body.second p.banaXml {
	margin:5px 0 0 84px;
	}
	
body.second small.memo {
	font-size:10px;
	line-height:14px;
	}

/*------------------------------------------------------privacy*/
body.second .readBox {
	width:790px;
	margin:40px auto 0 auto;
	}
	
body.second .readBox h2 {
	background:url(../images/second/bar_blue.gif) no-repeat 0 6px;
	padding:3px 0 3px 15px;
	margin-bottom:10px;
	}
	
body.second .readBox h3 {
	padding:3px 0 3px 15px;
	margin-bottom:-2px;
	}

body.second .readBox p {
	margin:0 10px 20px 15px;
	line-height:21px;
	}
	

body.second .readBox p.right {
	margin:20px 0 0 0;
	text-align:right;
	line-height:18px;
	}

body.second .readBox p.memo {
	margin:10px 0 0 0;
	text-align:right;
	line-height:18px;
	font-size:10px;
	}

body.second .readBox ol {
	margin:0 0 0 35px;
	padding:0;
	}

body.second .readBox ol li {
	margin-bottom:5px;
	list-style-type:decimal;
	}


/*------------------------------------------------------support*/
body.second .support {
	width:566px;
	margin:50px auto 120px auto;
	}
	

body.second .support .login {
	background:url(../images/second/bg_login.gif) repeat-y 0 0;
	}
	
body.second .support .login .btm {
	height:5px;
	background:url(../images/second/bg_login_btm.gif) no-repeat 0 bottom;
	}
	

body.second .support .login table.loginTb {
	width:354px;
	margin:10px auto;
	}
	

body.second .support .login table.loginTb th {
	padding:0 10px 0 0;
	text-align:right;
	}

body.second .support .login table.loginTb td input {
	margin:5px 0;
	}
	
body.second .support .login table.loginTb td input.sizeM {
	width:200px;
	}

/* ── software Menu をフレックスコンテナ化 ── */
body.second .softIndex .sMenu {
  display: flex;               /* 横並びの親に */
  justify-content: center;     /* 子要素を横方向中央に */
  flex-wrap: wrap;             /* 幅が狭いときは折り返し */
  gap: 11px;                   /* 子同士の間隔 */
}

/* ── menuBox 側の float を解除 ── */
body.second .softIndex .sMenu .menuBox {
  float: none !important;
  margin: 0 !important;        /* 古い margin をリセット */
}

/* （必要なら）最後の余白リセット */
body.second .softIndex .sMenu .menuBox.last {
  margin-right: 0 !important;
}

/* ── menu 内テキストは左揃えに ── */
body.second .softIndex .sMenu .menuBox p.txt,
body.second .softIndex .sMenu .menuBox p.link {
  text-align: left !important;
}
