@charset "utf-8";

/*============目次===========
Extra small 480px未満: スマホ

1: main_h1～h6
2: 基本タグ(p, em, ul, ol, dl, pre, sup)
3: イメージの配置に関するCSS
4: テーブル
5: box
5.1:Q&A用
6: ページ内アンカーリンク
7: アイテムタブ
8: トピックス
9: カラム
10: 囲み線
============================*/

/*========================
 ■1: main_h1～h6
  ========================*/
#main, #main02 {
	font-size:0.875em;			/* 14px */
	line-height:1.643em;		/* 23px */
	
}
#main h1, #main02 h1 {
	font-size: 22px;
	line-height:140%;		/* 23px */
	margin-top: 20px;
	margin-bottom: 20px;
}

#main h2, #main02 h2 {
	font-size: 1.286em;			/* 18px */
	line-height: 1.222em;		/* 22px */
}

#main h3, #main02 h3 {
	font-size: 1.143em;			/* 16px */
	line-height: 1.250em;		/* 20px */
}

#main h4, #main02 h4 {
	font-size: 1.071em;			/* 15px */
	line-height: 1.267em;		/* 19px */
}

#main h5, #main02 h5, 
#main h6, #main02 h6 {
	font-size: 1em;				/* 14px */
	line-height: 1.286em;		/* 18px */
}

#main h2, #main02 h2, 
#main h3, #main02 h3, 
#main h4, #main02 h4, 
#main h5, #main02 h5, 
#main h6, #main02 h6 {
	padding: 10px;
	background: #f0f0f0;
	border-top: 1px solid #ccc;
    margin-top: 15px;
    margin-bottom:10px;
    position: relative;
    zoom: 1;
}

#main h2.label02, #main02 h2.label02, 
#main h3.label02, #main02 h3.label02, 
#main h4.label02, #main02 h4.label02, 
#main h5.label02, #main02 h5.label02, 
#main h6.label02, #main02 h6.label02 {
    padding: 4px 0 4px 10px;
    background: none;
    border-style: none none none solid;
    border-left: solid #212176 5px;
    margin-top: 15px;
    margin-left: 5px;
    height: auto;
}

#main h2 .moreInfo, #main02 h2 .moreInfo, 
#main h3 .moreInfo, #main02 h3 .moreInfo, 
#main h4 .moreInfo, #main02 h4 .moreInfo, 
#main h5 .moreInfo, #main02 h5 .moreInfo, 
#main h6 .moreInfo, #main02 h6 .moreInfo {
    position: absolute;
    right: 12px;
    top: 10px;
	font-size: 14px;
    font-weight: normal;
    text-align: right;
    padding: 0 15px 0 0;
    min-height: 12px;
    background: url("../img/icon_moreinfo.gif") no-repeat 100% 50%;
}

#main h2.label02 .moreInfo, #main02 h2.label02 .moreInfo, 
#main h3.label02 .moreInfo, #main02 h3.label02 .moreInfo, 
#main h4.label02 .moreInfo, #main02 h4.label02 .moreInfo, 
#main h5.label02 .moreInfo, #main02 h5.label02 .moreInfo, 
#main h6.label02 .moreInfo, #main02 h6.label02 .moreInfo {
    top: 5px;
}


/*========================
 ■2: 基本タグ
 ========================*/
    
#main p, #main02 p {
    margin-top: 15px;
    margin-left: 10px;
}

#main * p, #main02 * p {
    margin-top: 0px;
    margin-left: 0px;
}

/* ------------------------- */
#main .indent, #main02 .indent {text-indent: 1em;}

#main em, #main02 em {font-weight: bold;}

/* ------------------------- */
#main form p, #main02 form p {
    margin-top: 15px;
    margin-left: 10px;
}
#main input, #main02 input {
	margin-right: 2px;
}

#main input, textarea,
#main02 input, textarea {
	letter-spacing: 0em;
	font-family: Arial, Verdana, sans-serif;
	resize: none;
}


/* ------------------------- */
#main ul, #main02 ul {
    margin-top: 15px;
    margin-left: 30px;
    list-style: outside disc;
	vertical-align: baseline;
}

#main * ul, #main02 * ul {
    margin-top: 0px;
	list-style-image:none;
}

#main ul li ul, #main02 ul li ul,
#main ul li ol, #main02 ul li ol,
#main ol li ul, #main02 ol li ul,
#main ol li ol, #main02 ol li ol {
    margin-left: 18px;
}


#main ul.items, #main02 ul.items{
    list-style: url(../img/marker01.gif);
}


#main ul.itemsR , #main02 ul.itemsR {
	list-style:none;
	text-align: right;
}

#main ul.itemsR li a, #main02 ul.itemsR li a{
    padding: 2px 5px 2px 15px;
    vertical-align: middle;
	background: url(../img/marker01.gif) no-repeat 0 2px;
}

#main ol, #main02 ol {
    margin-top: 15px;
    margin-left: 35px;
    list-style: outside decimal;
	vertical-align: baseline;
}

#main * ol, #main02 * ol {
	list-style-image:none;
    margin-top: 0px;
}

#main ul li, #main02 ul li, #main ol li, #main02 ol li {
	margin-top: 0.2em;
	margin-bottom: 0.4em;
}

/* ------------------------- */
#main .textmini, #main02 .textmini {
    font-size: 11px;			/* 11px */
	line-height: 1.545em;		/* 17px */
}

#main .textsmall, #main02 .textsmall {
    font-size: 12px;			/* 12px */
	line-height: 1.583em;		/* 19px */
}

#main .textminor, #main02 .textminor {
    font-size: 13px;			/* 13px */
	line-height: 1.615em;		/* 21px */
}

#main .textlarge, #main02 .textlarge {
    font-size: 16px;			/* 16px */
	line-height: 1.688em;		/* 27px */
}

/* ------------------------- */
#main ul.note, #main02 ul.note,
#main ul.note1, #main02 ul.note1,
#main ul.note2, #main02 ul.note2,
#main ul.note3, #main02 ul.note3{
    list-style: none;
}

#main ul.note dfn, #main02 ul.note dfn,
#main ul.note1 dfn, #main02 ul.note1 dfn {
	color: #cc3333;
	/*margin-right: .2em;*/
}

#main ul.note2 dfn, #main02 ul.note2 dfn,
#main ul.note3 dfn, #main02 ul.note3 dfn{
	color: #cc3333;
	margin-right: .2em;
}

#main ul.note, #main02 ul.note{
    margin-left: 50px;
	text-indent: -3.65em;
}

#main ul.note1, #main02 ul.note1{
    margin-left: 65px;
	text-indent: -4.65em;
}

#main ul.note2, #main02 ul.note2{
    margin-left: 25px;
	text-indent: -1.2em;
}

#main ul.note3, #main02 ul.note3{
    margin-left: 34px;
	text-indent: -1.9em;
}

#main ol.numlist1, #main02 ol.numlist1,
#main ol.numlist2, #main02 ol.numlist2 {
    list-style: none;
}
#main ol.numlist1, #main02 ol.numlist1 {
	margin-left: 1.7em;
	text-indent: -1.7em;
}
#main ol.numlist2, #main02 ol.numlist2 {
	margin-left: 1.4em;
	text-indent: -1.4em;
}
#main ol.numlist1 li, #main02 ol.numlist1 li,
#main ol.numlist2 li, #main02 ol.numlist2 li {
	margin-top:0;
	margin-bottom:0;
}

#main .notice, #main02 .notice {
    color: #cc3333;
}


/*========================
 ■3: イメージの配置
 ========================*/
#main .img_r, #main02 .img_r,
#main .img_l, #main02 .img_l {
	margin: 15px 0;
    text-align: center;
    font-size: 12px;
    line-height: 1.5em;
}

#main .img_r img, #main02 .img_r img,
#main .img_l img, #main02 .img_l img {
	margin-bottom: 3px
}


#main .img_r, #main02 .img_r {
    float: right;
	margin-left: 10px;
}
    
#main * .img_r, #main02 * .img_r {
    margin: 0 0 0 5px;
}

#main .img_l, #main02 .img_l {
    float: left;
	margin-right: 10px;
}

#main * .img_l, #main02 * .img_l {
    margin: 0 5px 0 0;
}

#main .smart_clear, #main02 .smart_clear {
	float:none;
	display: block;
	text-align: center;
    margin: 10px 0;
}



/*========================
 ■ 4: テーブル
 ========================*/
/*全色共有*/
#main .tabletxt, #main02 .tabletxt, #main .tabletxt_ex, #main02 .tabletxt_ex,
#main .tabletxtn, #main02 .tabletxtn, #main .tabletxt_exn, #main02 .tabletxt_exn, 
#main .tabletxt02, #main02 .tabletxt02, #main .tabletxt02_ex, #main02 .tabletxt02_ex,
#main .tabletxt02n, #main02 .tabletxt02n, #main .tabletxt02_exn, #main02 .tabletxt02_exn,
#main .tabletxt03, #main02 .tabletxt03, #main .tabletxt03_ex, #main02 .tabletxt03_ex,
#main .tabletxt03n, #main02 .tabletxt03n, #main .tabletxt03_exn, #main02 .tabletxt03_exn {
	width:100%;
    line-height: 1.429em; 
    margin-top: 20px;
    margin-left: 0;
	overflow-x: scroll;
	box-sizing: border-box;
}

::-webkit-scrollbar{ /* スクロールバー本体 */
	height: 8px;
	background: #f2f2f2;
}
::-moz-scrollbar{ /* スクロールバー本体 */
	height: 8px;
	background: #f2f2f2;
}
::-webkit-scrollbar:horizontal{ /* 横方向のスクロールバー本体 */
	background: #f2f2f2;
}
::-webkit-scrollbar-thumb:horizontal{ /* 横方向のスクロールバーの動く部分 */
	background: #ccc;;
	border-radius: 8px;
}
::-webkit-scrollbar-track-piece:start{ /* スクロールバーの動く部分の前 */
	background: #f2f2f2;
}


#main * .tabletxt, #main02 * .tabletxt, #main * .tabletxt_ex, #main02 * .tabletxt_ex,
#main * .tabletxtn, #main02 * .tabletxtn, #main * .tabletxt_exn, #main02 * .tabletxt_exn, 
#main * .tabletxt02, #main02 * .tabletxt02, #main * .tabletxt02_ex, #main02 * .tabletxt02_ex,
#main * .tabletxt02n, #main02 * .tabletxt02n, #main * .tabletxt02_exn, #main02 * .tabletxt02_exn,
#main * .tabletxt03, #main02 * .tabletxt03, #main * .tabletxt03_ex, #main02 * .tabletxt03_ex,
#main * .tabletxt03n, #main02 * .tabletxt03n, #main * .tabletxt03_exn, #main02 * .tabletxt03_exn {
    margin-top: 0;
    margin-left: 0;
	overflow-x: auto;
}

/* <table> */
.tabletxt table, .tabletxt_ex table, .tabletxt02 table, .tabletxt02_ex table, .tabletxt03 table, .tabletxt03_ex table,
.tabletxtn table, .tabletxt_exn table, .tabletxt02n table, .tabletxt02_exn table, .tabletxt03n table, .tabletxt03_exn table {
    text-align: left;
    border:none;
    margin:0 !important;
    padding:0 !important;
}

#main02 .tabletxt table, #main02 .tabletxt_ex table, 
#main02 .tabletxt02 table, #main02 .tabletxt02_ex table,
#main02 .tabletxt03 table, #main02 .tabletxt03_ex table,
#main02 .tabletxtn table, #main02 .tabletxt_exn table,
#main02 .tabletxt02n table, #main02 .tabletxt02_exn table,
#main02 .tabletxt03n table, #main02 .tabletxt03_exn table {
    width:956px;
}

#main .tabletxt table, #main .tabletxt_ex table, 
#main .tabletxt02 table, #main .tabletxt02_ex table,
#main .tabletxt03 table, #main .tabletxt03_ex table,
#main .tabletxtn table, #main .tabletxt_exn table,
#main .tabletxt02n table, #main .tabletxt02_exn table,
#main .tabletxt03n table, #main .tabletxt03_exn table {
    width:740px;
}


#main02 .smart_table02 table {
    width:630px;
}

#main .smart_table02 table {
    width:500px;
}

#main .smart_table, #main02 .smart_table {
	overflow: auto;
	font-size: 90%;
}

#main .smart_table table, #main02 .smart_table table {
    width:100%;
}

#main .smart_vtable, #main02 .smart_vtable {
	overflow: auto;
}

#main .smart_vtable table, #main02 .smart_vtable table {
    width:100%;
	border-collapse: collapse;
}
.smart_vtable {
	margin-top: 0px;
}

.smart_vtable th, 
.smart_vtable td {
	display: block;
    width:100% !important;
	text-align: left !important;
	box-sizing: border-box;
	border: none !important;
}
.smart_vtable th {
	margin-top: 10px;
}


.tabletxt table, .tabletxt_ex table, .tabletxt02 table, .tabletxt02_ex table, .tabletxt03 table, .tabletxt03_ex table {
    border-collapse: collapse;
}

.tabletxtn table, .tabletxt_exn table, .tabletxt02n table, .tabletxt02_exn table, .tabletxt03n table, .tabletxt03_exn table {
    border-collapse: separate;
}

/* <caption> */
caption { 
	padding:6px; }

/* <th> <td> */
.tabletxt th, .tabletxt_ex th, .tabletxt02 th, .tabletxt02_ex th, .tabletxt03 th, .tabletxt03_ex th,
.tabletxt td, .tabletxt_ex td, .tabletxt02 td, .tabletxt02_ex td, .tabletxt03 td, .tabletxt03_ex td {
    border: solid 1px #cdcdcd;
    padding: 6px;
    margin: 0;
}

.tabletxtn th, .tabletxt_exn th, .tabletxt02n th, .tabletxt02_exn th, .tabletxt03n th, .tabletxt03_exn th,
.tabletxtn td, .tabletxt_exn td, .tabletxt02n td, .tabletxt02_exn td, .tabletxt03n td, .tabletxt03_exn td {
    border: none;
    padding: 6px;
    margin: 0;
}


.th_title {
	text-align: center;
}

.th_sub, .th_sub2 {
	text-align:left;
}

/*グレー標準 01*/
.tabletxt .th_title, .tabletxtn .th_title{
    background-color: #c0c0c0;
}

.tabletxt .th_sub, .tabletxtn .th_sub {
    background-color: #ededed;
}

/*グレー応用 01_ex*/
.tabletxt_ex .th_title, .tabletxt_exn .th_title {
    background-color: #808080;
    color: #ffffff;
}

.tabletxt_ex .th_sub, .tabletxt_exn .th_sub {
    background-color: #c0c0c0;
}

.tabletxt_ex .th_sub2, .tabletxt_exn .th_sub2 {
    background-color: #ededed;
}

/*ブルー標準 02*/
.tabletxt02 .th_title, .tabletxt02n .th_title {
    background-color: #a7a7ce;
}

.tabletxt02 .th_sub, .tabletxt02n .th_sub {
    background-color: #e1e1f4;
}

/*ブルー応用 02_ex*/
.tabletxt02_ex .th_title, .tabletxt02_exn .th_title {
    background-color: #4f4f8e;
    color: #ffffff;
}

.tabletxt02_ex .th_sub, .tabletxt02_exn .th_sub {
    background-color: #a7a7ce;
}

.tabletxt02_ex .th_sub2, .tabletxt02_exn .th_sub2 {
    background-color: #e1e1f4;
}

/*グリーン標準 03*/
.tabletxt03 .th_title, .tabletxt03n .th_title {
    background-color: #9dcdd9;
}

.tabletxt03 .th_sub, .tabletxt03n .th_sub {
    background-color: #e1f1f4;
}

/*グリーン応用 03_ex*/
.tabletxt03_ex .th_title, .tabletxt03_exn .th_title {
    background-color: #3e8c9f;
    color: #ffffff;
}

.tabletxt03_ex .th_sub, .tabletxt03_exn .th_sub {
    background-color: #a5d1dc;
}

.tabletxt03_ex .th_sub2, .tabletxt03_exn .th_sub2 {
    background-color: #e1f1f4;
}

/* <ul> */
.tabletxt ul, .tabletxt_ex ul, .tabletxt02 ul, .tabletxt02_ex ul, .tabletxt03 ul, .tabletxt03_ex ul,
.tabletxtn ul, .tabletxt_exn ul, .tabletxt02n ul, .tabletxt02_exn ul, .tabletxt03n ul, .tabletxt03_exn ul {
	margin-left:1.143em;
	line-height:1.286em;
}

.tabletxt ul.items, .tabletxt_ex ul.items, .tabletxt02 ul.items, .tabletxt02_ex ul.items, .tabletxt03 ul.items, .tabletxt03_ex ul.items,
.tabletxtn ul.items, .tabletxt_exn ul.items, .tabletxt02n ul.items, .tabletxt02_exn ul.items, .tabletxt03n ul, .tabletxt03_exn ul.items {
	margin-left:1.143em;
	line-height:1.286em;
}

/* <ol> */
.tabletxt ol, .tabletxt_ex ol, .tabletxt02 ol, .tabletxt02_ex ol, .tabletxt03 ol, .tabletxt03_ex ol,
.tabletxtn ol, .tabletxt_exn ol, .tabletxt02n ol, .tabletxt02_exn ol, .tabletxt03n ol, .tabletxt03_exn ol {
	margin-left:1.429em;
	line-height:1.286em;
}

/* ------------------------- */

#main p.annotation, #main02 p.annotation {
	margin:3px 0 15px 0;
	padding:0 2px 2px 0;
	text-align:left;
}
	
#main p.annotationR, #main02 p.annotationR {
	margin:3px 0 15px 0;
	padding:0 2px 0 2px;
	text-align:right;
}

/* ------------------------- */
#contents .alignLeft table {
	margin-left: 0 !important;
	margin-right: auto !important;
}

#contents .alignRight table {
	margin-left: auto !important;
	margin-right: 0 !important;
}

#contents .alignCenter table {
	margin-left: auto !important;
	margin-right: auto !important;
}


/*========================
 ■ 4.1: テーブル 横並び用
 ========================*/
#main table table.table_sub,
#main02 table table.table_sub {
	width: 100% !important;
    border:none;
    padding:0;
}
.table_sub th, 
.table_sub td {
	display: table-cell !important;
	width: auto !important;
}


table.table_sub th, table.table_sub td{
    border:none !important;
	padding:0;
}

/*========================
 ■ 4.2: テーブル Q&A用
 ========================*/
table.qa_table {
  margin-left: 10px;
  margin-top: 10px;
  margin-bottom: 15px;
  border-collapse: collapse;
  border: solid 1px #ffffff;
}

table.qa_table th,
table.qa_table td {
  border: solid 1px #ffffff;
  padding: 5px 10px;
}

table.qa_table td.query {
  text-align: center;
  background-color: #cc3333;
  color: #ffffff;
}

table.qa_table td.answer {
  text-align: center;
  background-color: #ededed;
  vertical-align: top;
}

table.qa_table td.qtitle {
  text-align: left;
}

table.qa_table td.contents {
  text-align: left;
  width: 100%;
}

/* ------------------------- */
table.qa_table_sub {
  width: 98%;
  margin-left: 10px;
  margin-top: 10px;
  margin-bottom: 15px;
  border-collapse: collapse;
  border: solid 1px #c0c0c0;
}

table.qa_table_sub th,
table.qa_table_sub td {
  border: solid 1px #c0c0c0;
  padding: 5px 10px;
  text-align: center;
  vertical-align: top;
}

table.qa_table_sub th {
  background-color: #ededed;
}


/*========================
 ■ 4.3: テーブル ページ下部の各種ボックス
 ========================*/
.tabletxt_exbox {
    line-height: 1.214em !important; 
    margin-top: 20px;
}

.tabletxt_exbox table {
    border-collapse: collapse;
    width:100%;
    margin:0;
    padding:0;
    border: solid 1px #999;
}

.tabletxt_exbox th, .tabletxt_exbox td {
    border: none;
    padding: 6px;
    border-right: solid 1px #999;
    border-left: solid 1px #999;
}

.tabletxt_exbox .th_title {
    background-color: #808080;
    color: #ffffff;
	text-align:left;
}


/*========================
 ■ 6: ページ内アンカーリンク
 ========================*/
.anchor, .anchor1, anchor2 {
    width: 100%;
	height: auto;
    text-align: left;
    padding-top: 5px;
    position: relative;
    clear: both;
}

.anchor {
    border-top: 1px solid #b6b6b6;
    margin: 15px auto 15px;
}


.anchor1 {
    margin: 0 auto 15px;
	
}

.anchor2 {
    margin: 0 auto 0;
}

/* ------------------------- */
.anchor ol, .anchor1 ol, .anchor2 ol {
    margin: 0px  !important;
    padding: 2px 5px 0;
}

.anchor ol li, .anchor1 ol li {
	display: inline;
	float: left;
    margin-right: 10px;
	margin-bottom: 3px;
    list-style: none;
}

.anchor ol li span, .anchor1 ol li span {
	display: inline-block;
}

.anchor2 ol li {
    margin-right: 10px;
    margin-bottom: 3px;
	margin-left:16px;
	text-indent: -16px;
    display: block;
    list-style: none;
}

.anchor img, .anchor1 img, .anchor2 img {
    vertical-align: baseline;
    margin-bottom:-2px;
    margin-right: 2px;
}

/*========================
 ■ 7: アイテムタブ
 ========================*/
.item_tab, .item_tab2 {
    clear: both;
    border-bottom: 2px solid #8d9ac3;
    margin-top: 10px;
	line-height: 1.286em !important;
	box-sizing: border-box;
}

.item_tab ol, .item_tab2 ol {
    width: 100%;
    margin-left: 0 !important;
	margin-bottom: 1px !important;
    list-style: none !important;
	display:table;
}

.item_tab ol li, .item_tab2 ol li {
    float: left;
	margin: 0 !important;
	text-align: center;
	overflow: hidden;
}

.smart_tab14 ol li {
	width: 25%;
	height: 30px;
}

.smart_tab22 ol li {
	width: 50%;
	height: 45px;
}

.smart_tab22 ol li.col1 {
	width:100%;
}
.smart_tab14 ol li.col2 {
	width:50%;
}

.item_tab ol li a, .item_tab2 ol li a {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border:1px solid #c8cee2;
	background: linear-gradient(#fff, #dde1ed);
}

.smart_tab22 dfn, .smart_tab14 dfn {
	font-size:90%;
}

.item_tab ol li a {
    color: #333 !important;
    text-decoration: none !important;
}

.item_tab2 ol li a {
    color: #003399 !important;
}

.item_tab ol li a:hover, .item_tab2 ol li a:hover {
    background: #e7e9f1;
}

.item_tab ol li span, .item_tab2 ol li span {
	display: block;
	width: 100%;
	height: 100%;
    color: #333;
    font-weight: bold;
	box-sizing: border-box;
    background: #c8cee2;
}

.smart_tab22 ol li a, .smart_tab22 ol li span {
	padding: 15px 5px;
}
.smart_tab14 ol li a, .smart_tab14 ol li span {
	padding: 5px 5px;
}

.smart_tab22 .row2 {
	padding-top:5px !important;
}


.smart_tab22 ol li:nth-of-type(2n) a, .smart_tab22 ol li:nth-of-type(2n) span,
.smart_tab14 ol li a, .smart_tab14 ol li span {
	border-left: 1px solid #fff;
}

.smart_tab14 ol li:nth-of-type(4n+1) a, .smart_tab22 ol li:nth-of-type(4n+1) span {
	border-left: none;
}

.smart_tab22 ol li:nth-of-type(n+3) a, .smart_tab22 ol li:nth-of-type(n+3) span,
.smart_tab14 ol li:nth-of-type(n+5) a, .smart_tab14 ol li:nth-of-type(n+5) span {
	border-top: 1px solid #fff;
}

.smart_tab22 ol li.blank span, .smart_tab14 ol li.blank span {
	border-bottom: 1px solid #c8cee2;
	background: none;
}
	


/*========================
 ■ 8: 日付表示（トピックス）
 ========================*/
#main .date_box, #main02 .date_box {
	 margin-top: 10px;
}

.date_box dl.date {
	 margin-left: 10px;
}
 
.date_box .date dt {
}
 
.date_box .date dd {
    margin-left: 7px;
	margin-bottom:10px;
}
 
.date_box .date dd ul {
    margin-left: 1em !important;
 }
 
.date_box .date dd ol {
    margin-left: 1.5em !important;
 }

 /*========================
 ■ 9: カラム
 ========================*/
.column2, .column2B, .column2s, .column2Bs, .column3, .column3B, .column4, .column4B {
	margin-top: 15px;
	margin-bottom: 15px;
}

#main .column2 .col1, #main .column2 .col2,
#main .column2B .col1, #main .column2B .col2,
#main .column3 .col1, #main .column3 .col2, #main .column3 .col3,
#main .column3B .col1, #main .column3B .col2, #main .column3B .col3,
#main .column4 .col1, #main .column4 .col2, #main .column4 .col3, #main .column4 .col4,
#main .column4B .col1, #main .column4B .col2, #main .column4B .col3, #main .column4B .col4,
#main02 .column2 .col1, #main02 .column2 .col2,
#main02 .column2B .col1, #main02 .column2B .col2,
#main02 .column3 .col1, #main02 .column3 .col2, #main02 .column3 .col3,
#main02 .column3B .col1, #main02 .column3B .col2, #main02 .column3B .col3,
#main02 .column4 .col1, #main02 .column4 .col2, #main02 .column4 .col3, #main02 .column4 .col4,
#main02 .column4B .col1, #main02 .column4B .col2, #main02 .column4B .col3, #main02 .column4B .col4 {
	width: 100%;
}

#main .column2s .col1, #main .column2s .col2,
#main .column2Bs .col1, #main .column2Bs .col2,
#main02 .column2s .col1, #main02 .column2s .col2,
#main02 .column2Bs .col1, #main02 .column2Bs .col2 {
	width: 48.7%;
}


.column2 .col1, .column2 .col2,
.column2B .col1, .column2B .col2,
.column3 .col1, .column3 .col2, .column3 .col3,
.column3B .col1, column3B .col2, .column3B .col3,
.column4 .col1, .column4 .col2, .column4 .col3, .column4 .col4,
.column4B .col1, .column4B .col2, .column4B .col3, .column4B .col4 {
	padding: 0;
	margin-bottom: 15px;
}

.column2s .col1, .column2s .col2, 
.column2Bs .col1, .column2Bs .col2 { 
    float: left;
 }

.column2s .col1 {
	padding: 0 5px 0 0;
}
.column2s .col2 {
	padding: 0 0 0 5px;
}

.column2Bs .col1 {
	padding: 0 5px 0 0;
    border-right: solid 1px #999;
}

.column2Bs .col2 {
	padding: 0 0 0 5px;
    border-left: solid 1px #999;
	margin-left: -1px !important;
}

.column2 * h2, .column2B * h2, .column2s * h2, .column2Bs * h2, .column3 * h2, .column3B * h2, .column4 * h2, .column4B * h2,
.column2 * h3, .column2B * h3, .column2s * h3, .column2Bs * h3, .column3 * h3, .column3B * h3, .column4 * h3, .column4B * h3,
.column2 * h4, .column2B * h4, .column2s * h4, .column2Bs * h4, .column3 * h4, .column3B * h4, .column4 * h4, .column4B * h4,
.column2 * h5, .column2B * h5, .column2s * h5, .column2Bs * h5, .column3 * h5, .column3B * h5, .column4 * h5, .column4B * h5,
.column2 * h6, .column2B * h6, .column2s * h6, .column2Bs * h6, .column3 * h6, .column3B * h6, .column4 * h6, .column4B * h6,
.column2s * h2, .column2Bs * h2,
.column2s * h3, .column2Bs * h3,
.column2s * h4, .column2Bs * h4,
.column2s * h5, .column2Bs * h5,
.column2s * h6, .column2Bs * h6 {
	padding-left: 10px !important;
    margin-top: 0px !important;
 }
 

 
/*========================
 ■ 5: box
 ========================*/
.boxWhite, .boxRed, .boxGray {
    margin-top: 20px;
}

/*ホワイト White*/
.boxWhite {
    border: solid 1px #ccc;
}

#main .boxWhite h2, #main02 .boxWhite h2, 
#main .boxWhite h3, #main02 .boxWhite h3, 
#main .boxWhite h4, #main02 .boxWhite h4, 
#main .boxWhite h5, #main02 .boxWhite h5, 
#main .boxWhite h6, #main02 .boxWhite h6 {
    margin-top: 0px;
	margin-bottom: 5px;
    padding: 4px 10px;
    border-style: none;
    border-bottom: 1px solid #cccccc;
    background: url(../img/bg_box01.gif) bottom;
	font-size: 1.143em !important;
}


/*レッド Red*/
.boxRed {
    border: solid 1px #f9a5a5;
}

#main .boxRed h2, #main02 .boxRed h2, 
#main .boxRed h3, #main02 .boxRed h3, 
#main .boxRed h4, #main02 .boxRed h4, 
#main .boxRed h5, #main02 .boxRed h5, 
#main .boxRed h6, #main02 .boxRed h6 {
    margin-top: 0px;
	margin-bottom: 5px;
    padding: 4px 10px;
    border-style: none;
    border-bottom: 1px solid #f9a5a5;
    background: url(../img/bg_box02.gif) bottom;
	font-size: 1.143em !important;
}

/*グレー Gray*/
.boxGray {
    border: solid 1px #999999;
}

#main .boxGray h2, #main02 .boxGray h2, 
#main .boxGray h3, #main02 .boxGray h3, 
#main .boxGray h4, #main02 .boxGray h4, 
#main .boxGray h5, #main02 .boxGray h5, 
#main .boxGray h6, #main02 .boxGray h6 {
    margin-top: 0px;
	margin-bottom: 5px;
    padding: 4px 10px;
    border-style: none;
    border-bottom: 1px solid #999999;
    background: url(../img/bg_box03.gif) bottom;
    color: #ffffff;
	font-size: 1.143em !important;
}

/*========================
 ■ 10: 囲み線
 ========================*/
.lineboxWhite, .lineboxRed, .lineboxGray, .lineboxGreen, .lineboxBlue,
.lineboxWhite02, .lineboxRed02, .lineboxGray02, .lineboxGreen02, .lineboxBlue02 {
    margin-top: 20px;
    padding: 3px 10px;
}

/*背景なし ホワイト White*/
.lineboxWhite {
    border: solid 1px #cccccc;
}

/*背景なし レッド Red*/
.lineboxRed {
    border: solid 1px #f9a5a5;
}

/*背景なしグレー Gray*/
.lineboxGray {
    border: solid 1px #999999;
}

/*背景なし グリーン Green*/
.lineboxGreen {
    border: solid 1px #9dcdd9;
}

/*背景なし ブルー Blue*/
.lineboxBlue {
    border: solid 1px #a7a7ce;
}


/*背景あり ホワイト White02*/
.lineboxWhite02 {
    border-style: none;
    border: 1px solid #cccccc;
    background: #f2f2f2;
}

/*背景あり レッド Red02*/
.lineboxRed02 {
    border-style: none;
    border: solid 1px #f9a5a5;
    background: #fff2f2;
}

/*背景あり グレー Gray02*/
  .lineboxGray02 {
    border-style: none;
    border: solid 1px #999999;
    background: #808080;
    color: #ffffff;
}
 
/*背景あり グリーン Green02*/
.lineboxGreen02 {
    border-style: none;
    border: solid 1px #9dcdd9;
    background: #ebfcff;
}

/*背景あり ブルー Blue02*/
.lineboxBlue02 {
    border-style: none;
    border: solid 1px #a7a7ce;
    background: #ebebff;
}

/*========================
 ■ 10: アイコン
 ========================*/
#main ul.icon, #main02 ul.icon {
	margin-left:10px;
	list-style:none;
}

#main ul.icon li, #main02 ul.icon li {
	margin-bottom: 0;
}

/* ------------------------- */
.pdf, .xls, .doc, .ppt, .zip, .exe, .txt, .mp4 {
    padding-left: 32px;
	background-position: 0 0;
	background-repeat:no-repeat;
}

p.pdf, p.xls, p.doc, p.ppt, p.zip, p.exe, p.txt, p.mp4,
li.pdf, li.xls, li.doc, li.ppt, li.zip, p.exe, li.txt, li.mp4 {
	background-position: 0 4px !important;
}

.wmv {
    padding-left: 39px;
	background-position: 0 .2em;
	background-repeat:no-repeat;
}

.pdf { background-image: url("../img/icon_pdf.gif") }
.xls { background-image: url("../img/icon_xls.gif") }
.doc { background-image: url("../img/icon_doc.gif") }
.ppt { background-image: url("../img/icon_ppt.gif") }
.zip { background-image: url("../img/icon_zip.gif") }
.exe { background-image: url("../img/icon_exe.gif") }
.txt { background-image: url("../img/icon_txt.gif") }
.wmv { background-image: url("../img/icon_wmv.gif") }
.mp4 { background-image: url("../img/icon_mp4.gif") }

/* ------------------------- */
.dl, .ex, .nw, .tl, .fx, .ml {
    padding-left: 20px;
	background-position: 0 0;
	background-repeat:no-repeat;
}

p.dl, p.ex, p.nw, p.tl, p.fx, p.ml,
li.dl, li.ex, li.nw, li.tl, li.fx, li.ml {
	background-position: 0 4px !important;
}


.dl { background-image: url("../img/icon_dl.gif") }
.ex { background-image: url("../img/icon_ex.gif") }
.nw { background-image: url("../img/icon_nw.gif") }
.ml { background-image: url("../img/icon_ml.gif") }
.tl { background-image: url("../img/icon_tl.gif") }
.fx { background-image: url("../img/icon_fx.gif") }

/* ------------------------- */
.zu {
    padding-left: 20px;
	background: url("../img/icon_zu.gif") no-repeat 0 2px;
}
a.zu, span.zu {
	background-position: 0 -1px;
}


/*========================
 ■ 販売終了製品
 ========================*/
.redtag { 
    float: right;
    margin-top: 15px;
    margin-left: 10px;
    padding: 5px 10px;
    color: #ffffff;
    background-color: #cc3333;
    font-weight: bold;
}

/*========================
 ■ 水平線
 ========================*/
#main hr, #main02 hr {
    border-width: 1px 0 0 0 !important;
	margin: .5em auto 1.2em;
}


#main hr.line01, #main02 hr.line01,
#main hr.line02, #main02 hr.line02 {
	height: 1px;
	color:#cccccc;
    border-width: 1px 0px 0px 0px;
	margin: .5em auto 1.2em;
}

#main hr.line01, #main02 hr.line01 {
	border-style:dashed;
}

#main hr.line02, #main02 hr.line02 {
	border-style:solid;
}

/*========================
 ■ 横並びリスト
 ========================*/
.row th {
    width: 80px;
    vertical-align: top;
    padding: 0 10px 0 25px;
    text-align: left
}

.row td {
    vertical-align: top
}

.row dt {
    width: 70px;
    float: left;
    clear: both;
    padding:0 10px 0 25px 
}

.row dd {
    margin-left: 110px;
}


.row2 dt {
    width: 60px;
    float: left;
    clear: both;
    padding:0; 
}

.row2 dd {
    margin-left: 60px;
}


/*========================
 ■ ページナビゲーション
 ========================*/
.nav {
    text-align: center
}
.nav img {
    margin-bottom: -2px
}

/*========================
 ■ 入力フォーム
 ========================*/
th.th_item {
	border-right: none;
	vertical-align: top;
}

th.th_mark {
	border-left: none;
	vertical-align: top;
}

td.td_input {
	border-right: none;
	vertical-align: middle;
}

td.td_ex {
	border-left: none;
	vertical-align: middle;
	color: #666;
	font-size: .9em;
}

.td_input input, .td_input textarea {
	border: 1px solid #cdcdcd;
	padding: 4px 2px;
}

.td_input select {
	border: 1px solid #cdcdcd;
	padding: 4px 2px;
}

input.check {
	border: none;
}

.privacy {
	padding: 15px;
}

.privacy .title {
	font-size: 1.4em;
}

/*------------------------------------*/
.form * {
	box-sizing: border-box;
}

.form table {
    width:98%;
    margin:0 auto;
    padding:0;
    border-collapse: collapse;
}

.form th,
.form td {
	display: block;
	width: 100% !important;
	text-align: left;
}

.form th {
    background-color: #e6e6e6;
	margin: 20px 0 10px;
    padding: 6px;
}

.form td {
    padding: 2px 6px;
}


.form span.required {
	margin-left: 10px;
	height: 100%;
}


.form span.required dfn {
	display: inline-block;
	padding: 0 8px;
	vertical-align: top;
	background: linear-gradient(to bottom right, #ff6600, #ff9300);
	font-size: 12px;
	color: #fff;
	line-height: 170% !important;
}
	 
.form span.required img{
	display: none;
	vertical-align: middle;
}

.form td.td_ex {
	color: #666;
	font-size: 12px;
	line-height: 150%;
}

.form .td_input input[type=text],
.form .td_input textarea,
.form .td_input select {
	border: 1px solid #cdcdcd;
	padding: 6px 2px;
	width: 100%;
	border-radius: 4px;
}

.form .td_input input[type=radio] {
	border: 1px solid #cdcdcd !important;
	vertical-align: middle;
}

/*------------------------------------*/

.form button[type="submit"] {
	display: block;
	padding: 7px 0 !important;
	height: 50px;
	width: 96%;
	max-width: 420px;
	border:none;
	border-radius: 4px;
	background: linear-gradient(#72b800, #4ba800);
	margin: 30px auto !important;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
}

.form .confirm a:hover,
.form button[type="submit"]:hover {
	filter:alpha(opacity=80);
	opacity:0.80;
	-moz-opacity:0.80;
}

/*------------------------------------*/

.form .confirm {
	width: 100%;
	margin: 30px auto;
}

.form .confirm a,
.form .confirm button[type="submit"] {
	display: inline-block;
	float: left;
	height: 50px;
	padding: 7px 0 !important;
	width: 40%;
	max-width: 150px;
	border:none;
	border-radius: 4px;
	background: linear-gradient(#72b800, #4ba800);
	margin: 0 5% !important;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	text-align: center;
}

.form .confirm a {
	color: #fff !important;
	text-decoration: none !important;
	font-weight: bold;
	padding-top: 14px !important;
}


.form .privacy {
    border-style: none;
    border: 1px solid #ccc;
    background: #f2f2f2;
	width: 98%;
	padding: 15px 10px;
	margin: 0 auto;
}

.form .privacy .title {
	font-size: 1.4em;
}


/*========================
 ■ セミナープログラム
 ========================*/
.agenda  {
    margin-top: 0;
    margin-left: 0;
}

.agenda table {
    border:none;
    margin:0;
    padding:0;
    border-collapse: collapse;
}

.agenda th,
.agenda td {
	display: block;
	width: 100%;
    border: none;
    padding: 6px;
	text-align: left;
	box-sizing: border-box;
}

.agenda th.th_title {
	display: none;
}

.agenda th.th_sub {
    background-color: #c0c0c0;
	margin-top: 10px; 
}

.agenda_ttl {
	font-weight: bold;
	font-size: 15px;
}
.agenda_speaker {
	margin-bottom: 15px;
}


/*========================
■ 共通
========================*/
/* ------------------------- */
.sp10 {height: 10px;}
.sp20 {height: 20px;}

/* ------------------------- */
.mt0 {margin-top:0 !important}
.mt5 {margin-top:5px !important}
.mt10 {margin-top:10px !important}
.mt12 {margin-top:12px !important}
.mt15 {margin-top:15px !important}
.mt20 {margin-top:20px !important}
.mt25 {margin-top:20px !important}
.mt30 {margin-top:30px !important}
.mt40 {margin-top:30px !important}
.mt50 {margin-top:30px !important}
.mb0 {margin-bottom:0 !important;}
.mb10 {margin-bottom:10px !important;}
.mb20 {margin-bottom:20px !important;}
.mb30 {margin-bottom:30px !important;}
.mb40 {margin-bottom:40px !important;}
.mb50 {margin-bottom:50px !important;}
.mr0 {margin-right:0 !important}
.mr10 {margin-right:10px !important}
.mr20 {margin-right:20px !important}
.mr30 {margin-right:30px !important}
.mr40 {margin-right:40px !important}
.mr50 {margin-right:50px !important}
.ml0 {margin-left:0 !important}
.ml10 {margin-left:10px !important}
.ml20 {margin-left:20px !important}
.ml30 {margin-left:30px !important}
.ml40 {margin-left:40px !important}
.ml50 {margin-left:50px !important}


.boxCenter {margin-left: auto; margin-right:auto}


ul.ulR {
	display: inline-block;
	text-align: right !important;
	margin-left:auto;
	margin-right: 0;
}

ul.ulR li {
	text-align: left;
}

/* ------------------------- */
.inner {
    padding: 3px 10px;
}

.column2 .inner,
.column2B .inner,
.column3 .inner,
.column3B .inner,
.column4 .inner,
.column4B .inner {
    padding: 0 10px;
}

/* ------------------------- */
.ttl_large {
	font-size: 150%	!important;
	line-height: 130% !important;
}

.ttl_large > span.sub {
	font-size: 85%;
	font-weight: normal;
	display:block;
}

/* ------------------------- */
a.imgborder img{
	border: solid 1px #003399;
}

a:hover.imgborder img{
	border: solid 1px #0066cc;
}


/* ------------------------- */
sub {
	vertical-align: baseline;
	margin:0;
	padding:0;
	font-size: 95%;
}

/* ------------------------- */
.newsafter {
	text-align:left;
	margin-left:1.5em !important;
	text-indent: -1em;
    font-size: 0.929em;		/* 13px */
	line-height: 130%;		/* 21px */
}

/* --- Google Maps Area --- */
#map-contents {
	width: 94%;
	margin: 15px auto 0;
}

#gmap-canvas {
	position:relative;
	width: 100%;
	height: 300px;
	border: solid 1px #999;
	box-sizing: border-box;
}

/* ------------------------- */
#contents .alignCenter {
	text-align: center;
	margin-left:auto;
	margin-right:auto;
}
#contents .alignRight {
	text-align: right;
	margin-left:auto;
	margin-right:0;
}
#contents .alignLeft {
	text-align: left;
	margin-left:0;
	margin-right:auto;
}
	

/*========================
 ■ PC用解除
 ========================*/
.pc_off {
	display: block;
}



/*========================
 ■ スマホ用
 ========================*/
.smaar-word-break,
.smart-word-break {
	word-break: break-all;
}

#contents .smartLeft {
	text-align: left;
	margin-left:0;
	margin-right:auto;
}

#contents .smartRight {
	text-align: right;
	margin-left:auto;
	margin-right:0;
}

#contents .smartCenter {
	text-align: center;
	margin-left:auto;
	margin-right:auto;
}

.smart_off {
	display: none;
}

img.smartimg {
	height: auto
}

span.smart_br:before {
	content: "\A" ;
	white-space: pre ;
}

.smart_blockend {
    clear: both;
}



