/*=======================================================================
 NEW MODULE
=======================================================================*/

/* Big-entry - bigentry_box
------------------------------------------------------------*/
.bigentry_box {
  padding: 0 10px;
}
.bigentry_box ul {
  overflow:hidden;
  width:100%;
  margin:0 auto;
  text-align:center;
}
.bigentry_box li {
  position:relative;
  float:left;
  width:24%;
  height: 450px;
  margin:10px 0.5% 0 0.5%;
  border:1px solid #e7e7e7;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.bigentry_box li > a{
  display:block;
  height: 100%;
  text-decoration:none !important;
}
.bigentry_box li > a .text{
  color:#333 !important;
}
.bigentry_box li > a:hover .text .fom{
  color:#eb081e !important;
}
.bigentry_box li > a .image{
  position:relative;
  overflow:hidden;
}
.bigentry_box li > a:hover .image:before{
  content: ' ';
  position: absolute;
  overflow:hidden;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:rgba(0, 0, 0, 0.3);
}

.bigentry_box .image img{
  width: 100%;
  height: auto;
}
.bigentry_box .text{
  padding:15px 15px 12px;
  line-height: 1.5;
}
.bigentry_box .text h2{
  padding-bottom:12px;
  line-height: 1.3;
  font-size:22px;
}
.bigentry_box .text h2 img{
  max-width: 100%;
  margin:0 auto;
}
.bigentry_box .text .fom{
  display:block;
  margin-top:15px;
}

.bigentry_box .tile02 .image,
.bigentry_box .tile04 .image,
.bigentry_box .tile06 .image,
.bigentry_box .tile08 .image,
.bigentry_box .tile10 .image,
.bigentry_box .tile12 .image {
  position:absolute;
  bottom:0;
}

/* 5　column */
@media (min-width: 1501px){
  .bigentry_box li {
    width:19%;
  }
  .bigentry_box .tile07 .image,
  .bigentry_box .tile09 .image,
  .bigentry_box .tile12 .image{
    position:absolute;
    bottom:0;
  }
  .bigentry_box .tile06 .image,
  .bigentry_box .tile08 .image,
  .bigentry_box .tile10 .image,
  .bigentry_box .tile11 .image
  {
    position:relative;
    top:0;
  }
}
/* 3　column */
@media (min-width: 601px) and (max-width: 767px){
  .bigentry_box li {
    width:31%;
    margin:10px 1.1% 0 1.1%;
  }
  .bigentry_box .tile05 .image,
  .bigentry_box .tile11 .image{
    position:absolute;
    bottom:0;
  }
  .bigentry_box .tile04 .image,
  .bigentry_box .tile06 .image,
  .bigentry_box .tile07 .image,
  .bigentry_box .tile09 .image,
  .bigentry_box .tile10 .image,
  .bigentry_box .tile12 .image
  {
    position:relative;
    top:0;
  }
}
/* 2　column */
@media (min-width: 481px) and (max-width: 600px){
  .bigentry_box li {
    width:48%;
    margin:10px 1% 0 1%;
  }
}
/* 1　column */
@media (max-width: 480px){
  .bigentry_box {
    padding: 0 20px;
  }
  .bigentry_box li {
    float:none;
    width:auto;
    height:auto !important;
    max-width:310px;
    margin:20px auto 0;
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
  }
  .bigentry_box li .image {
    position:relative !important;
    top:0;
  }
}




/* basic
------------------------------------------------------------*/
/* font */
.bold {font-weight:bold;}
.italic {font-style:italic;}
.normal {font-weight:normal; font-style:normal;}

/* text-align */
.left {text-align:left !important;}
.right {text-align:right !important;}
.center {text-align:center !important;}

.block_center {margin-left:auto; margin-right:auto;}

/* vertical-align */
.vat {vertical-align:top !important;}
.vam {vertical-align:middle !important;}
.vab {vertical-align:bottom !important;}

/* float */
.fl {float:left;}
.fr {float:right;}
.clearfix{
  zoom:1;
}
.clearfix:after{
  content:"";
  display:block;
  height:0px;
  clear:both;
  visibility:hidden;
  overflow:hidden;
}

/* link icon
------------------------------------------------------------*/
/*　Find Out More　*/
.fom {
  margin-top: 5px;
  font-weight: bold;
}
.fom:after {
  content: url(/components/images/ico_arrow_red_s.png);
  font-size: 9px;
  color: #ec0a1e;
  margin-left: 5px;
  margin-bottom: 2px;
}

/* pdf */
.pdf a{
  padding-right: 12px;
  background:url(/components/images/ico_arrow_red_s.png) no-repeat center right;
  font-weight:bold;
}
.pdf .icon_pdf{
  display:inline-block;
  width:16px;
  height:16px;
  margin:0 5px;
  background:url(/components/images/ico_pdf.gif) no-repeat center right;
  vertical-align:middle;
}

/* blank */
.externalLink {
  display:inline;
  *display:inline-block;
  padding-right:19px;
  background:url(/components/images/ico_blank.png) right no-repeat;
  line-height:125%;
}


/* list
------------------------------------------------------------*/
ul.disc{
  margin:10px 0 0 20px;
}
ul.disc li{
  margin-top:0.5em;
  list-style-type: disc;
  line-height: 1.5;
}

/* notes
------------------------------------------------------------*/
ul.notes li, p.notes{
  list-style-type:none;
  padding-left:1em;
  text-indent:-1em;
  line-height:1.5;
}
ul.notes{
  margin-top:10px;
}
ul.notes li{
  margin-top:0.5em;
}
dl.notes{
  margin-top: 10px;
  line-height:1.5;
}
dl.notes dt{
  float:left;
  clear:left;
  padding:0.5em 0 0 0;
}
dl.notes dd{
  overflow:hidden;
  padding:0.5em 0 0 1em;
  /*zoom:100%;*/
}

/* dl_column
------------------------------------------------------------*/
dl.dl_column{
  overflow:hidden;
  margin-top:1em;
}
dl.dl_column dt{
  float:left;
  clear:left;
  margin:0;
  padding:0.5em 0 0 0;
  font-weight:bold;
}
dl.dl_column dd{
  display:block;
  float:none;
  overflow:hidden;
  margin:0;
  padding:0.5em 0 0 1em;
  zoom:100%;
}
#main_body dl.dl_column dd > p:first-child{
  padding-top:0;
}
@media (max-width: 600px){
  dl.dl_column dt{
    float:none;
  }
  dl.dl_column dd{
    padding-top:0;
  }
}

/* news_list
------------------------------------------------------------*/
dl.news_list{
  overflow:hidden;
  padding:0 0 0.8em 0;
  border-top:1px solid #ccc;
  border-bottom:1px solid #ccc;
  line-height:1.5;
}
dl.news_list dt{
  float:left;
  clear:left;
  margin:0;
  padding:0.8em 0 0 0;
  color:#898989;
}
dl.news_list dd{
  display:block;
  float:none;
  overflow:hidden;
  margin:0;
  padding:0.8em 0 0 3em;
  zoom:100%;
}
@media (max-width: 600px){
  dl.news_list dd{
    padding-left:2em;
  }
}
@media (max-width: 480px){
  dl.news_list dt{
    float:none;
  }
  dl.news_list dd{
    padding:0;
  }
}



/* scroll_area
------------------------------------------------------------*/
.scroll_area{
  overflow-x: auto;
}


/* img_title
------------------------------------------------------------*/
#main_body .img_title{
  display:block;
  margin:1.5em 0 -0.4em;
  line-height:1.3;
}


/* link_button, .link_button2
------------------------------------------------------------*/
.link_button, .link_button2{
  margin-left:-10px;
  margin-right:-10px;
}
.link_button ul, .link_button2 ul{
  display:table;
  border-collapse:separate;
  border-spacing:10px 0;
  width:100%;
  margin-top:2em;
}
.link_button li, .link_button2 li{
  display:table-cell;
  vertical-align:middle;
  background-color:#f4f4f4;
}
.link_button.col2 li, .link_button2.col2 li{  width:50%;}
.link_button.col3 li, .link_button2.col3 li{  width:33.3%;}
.link_button.col4 li, .link_button2.col4 li{  width:25%;}
.link_button.col5 li, .link_button2.col5 li{  width:20%;}
.link_button.col6 li, .link_button2.col6 li{  width:16.6%;}
.link_button.col7 li, .link_button2.col7 li{  width:14.2%;}

.link_button li > a, .link_button2 li > a{
  display:block;
  padding:10px 7px;
  text-decoration:none !important;
  text-align:center;
  line-height:1.3;
  font-weight:bold;
}
.link_button li span.icon, .link_button2 li span.icon{
  display:block;
  margin:0 auto 8px;
}

/* current */
.link_button li.current > a, .link_button2 li.current > a{
  color:#eb081e !important;
}

@media (max-width: 767px){
  .link_button2{
    margin:0;
  }
  .link_button2 ul{
    display:block;
  }
  .link_button2 li{
    display:block;
    width:100% !important;
    margin-top:10px;
  }
  .link_button2 li > a{
    display:table;
    padding:10px 0;
    text-align:left;
  }
  .link_button2 li span{
    display:table-cell;
    width:auto;
    vertical-align:middle;
    text-align:left;
  }
  .link_button2 li span.icon{
    display:inline-block;
    margin:0 10px 0 0;
  }
}

/* link_button icon setting
============================================================*/
.link_button li a .icon_dummy, .link_button2 li a .icon_dummy{
  width:30px;
  height:28px;
  background-image:url(/components/images/ico_link@x1.png);
  background-repeat:no-repeat;
  background-position:0 0;
}
.link_button li a:hover .icon_dummy,
.link_button li.current .icon_dummy,
.link_button2 li a:hover .icon_dummy,
.link_button2 li.current .icon_dummy{background-position:-30px 0;}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3 / 2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .link_button li a .icon_dummy, .link_button2 li a .icon_dummy {
    background-image:url(/components/images/ico_link@x2.png);
    -moz-background-size:60px 28px;
    -o-background-size:60px 28px;
    -webkit-background-size:60px 28px;
    background-size:60px 28px;
  }
}
/*===========================================================*/




/* local_link
   local_link2
   tab_link
   tab_link2
------------------------------------------------------------*/
.local_link, .local_link2,
.tab_link, .tab_link2{
  display:table;
  width:100%;
  margin:2em 0 1.5em 0;
}
.local_link li, .local_link2 li,
.tab_link li, .tab_link2 li{
  display:table-cell;
  vertical-align:middle;
  background:url(/components/images/line_link.png) no-repeat bottom left;
}
.local_link li:hover, .local_link2 li:hover,
.tab_link li:hover, .tab_link2 li:hover,
.tab_link li.current, .tab_link2 li.current{
  background:url(/components/images/line_link_on.png) no-repeat bottom left;
}
.local_link li:first-child, .local_link2 li:first-child,
.local_link li:first-child:hover, .local_link2 li:first-child:hover,
.tab_link li:first-child, .tab_link2 li:first-child,
.tab_link li:first-child:hover, .tab_link2 li:first-child:hover{
  background-position:-10px bottom;
}
.local_link.col2 li, .local_link2.col2 li, .tab_link.col2 li, .tab_link2.col2 li{  width:50%;}
.local_link.col3 li, .local_link2.col3 li, .tab_link.col3 li, .tab_link2.col3 li{  width:33.3%;}
.local_link.col4 li, .local_link2.col4 li, .tab_link.col4 li, .tab_link2.col4 li{  width:25%;}

.local_link li > a, .local_link2 li > a,
.tab_link li > a, .tab_link2 li > a{
  display:block;
  height:100%;
  margin-left:10px;
  padding:5px 0;
  text-decoration:none !important;
  line-height:1.3;
  font-weight:bold;
  font-size:108%;
}
.local_link li:first-child > a, .local_link2 li:first-child > a,
.tab_link li:first-child > a, .tab_link2 li:first-child > a{
  margin-left:0;
}
.local_link li > a:visited, .local_link2 li > a:visited{
  color:#363636 !important;
}
.local_link li > a:hover, .local_link2 li > a:hover,
.tab_link li > a:hover, .tab_link2 li > a:hover{
  color:#eb081e !important;
}
.local_link li span, .local_link2 li span,
.tab_link li span, .tab_link2 li span{
  display:inline-block;
  position:relative;
  padding-right:25px;
}
.tab_link li span, .tab_link2 li span{
  padding-right:20px;
}
.local_link li span:after, .local_link2 li span:after,
.tab_link li span:after, .tab_link2 li span:after{
  content:"";
  position:absolute;
  top:50%;
  right:0;
  background-image:url(/components/images/ico_link_arrow@x1.png);
  background-repeat:no-repeat;
}

/* local_link */
.local_link li span:after, .local_link2 li span:after{
  width:13px;
  height:7px;
  margin-top:-4px;
  background-position:0 0;
}
.local_link li > a:hover span:after, .local_link2 li > a:hover span:after{
  background-position:-13px 0;
}

/* tab_link */
.tab_link li span:after, .tab_link2 li span:after{
  width:7px;
  height:13px;
  margin-top:-7px;
  background-position:0 -13px;
}
.tab_link li > a:hover span:after, .tab_link2 li > a:hover span:after,
.tab_link li.current span:after, .tab_link2 li.current span:after{
  background-position:-13px -13px;
}
/* current */
.tab_link li.current > a, .tab_link2 li.current > a{
  color:#eb081e !important;
}


@media (max-width: 767px){
  .local_link li > a, .local_link2 li > a,
  .tab_link li > a, .tab_link2 li > a{
    padding:3px 0;
    font-size:108%;
  }
  .local_link li span, .local_link2 li span,
  .tab_link li span, .tab_link2 li span{
    padding-right:20px;
  }
  /* local_link2, tab_link2 */
  .local_link2, .tab_link2{
    display:block;
    margin-left:0;
  }
  .local_link2 li, .tab_link2 li{
    display:block;
    width:100% !important;
    margin-top:1.5em;
    background-image:none;
    text-align:center;
  }
  .local_link2 li > a, .tab_link2 li > a{
    margin-left:0;
    border-bottom:2px solid #363636;
  }
  .local_link2 li > a:hover, .tab_link2 li > a:hover{
    border-bottom:2px solid #eb081e;
  }
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3 / 2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .local_link li span:after, .local_link2 li span:after,
  .tab_link li span:after, .tab_link2 li span:after {
    background-image:url(/components/images/ico_link_arrow@x2.png);
    background-repeat: no-repeat;
    -moz-background-size:24px 35px;
    -o-background-size:24px 35px;
    -webkit-background-size:24px 35px;
    background-size:24px 35px;
  }

  /* local_link */
  .local_link li span:after, .local_link2 li span:after{
    width:12px;
    height:7px;
    background-position:0 0;
  }
  .local_link li > a:hover span:after, .local_link2 li > a:hover span:after{
    background-position:-12px 0;
  }

  /* tab_link */
  .tab_link li span:after, .tab_link2 li span:after{
    width:7px;
    height:12px;
    background-position:0 -13px;
  }
  .tab_link li > a:hover span:after, .tab_link2 li > a:hover span:after,
  .tab_link li.current span:after, .tab_link2 li.current span:after{
    background-position:-12px -13px;
  }
}


/* local_link_s
   local_link_s2
   tab_link_s
   tab_link_s2
------------------------------------------------------------*/
.local_link_s ul, .local_link_s2 ul,
.tab_link_s ul, .tab_link_s2 ul{
  overflow:hidden;
  margin-top:1em;
  margin-left:-1em;
}
.local_link_s li, .local_link_s2 li,
.tab_link_s li, .tab_link_s2 li{
  float:left;
  margin-top:0.5em;
  margin-left:-1px;
  padding:0 1em;
  border-left:1px solid #898989;
  vertical-align:top;
}
.local_link_s li > a, .local_link_s2 li > a,
.tab_link_s li > a, .tab_link_s2 li > a{
  display:block;
  text-decoration:none !important;
  line-height:1.3;
}
.local_link_s li > a:visited, .local_link_s2 li > a:visited{
  color:#363636 !important;
}
.local_link_s li > a:hover, .local_link_s2 li > a:hover,
.tab_link_s li > a:hover, .tab_link_s2 li > a:hover{
  color:#eb081e !important;
}
.local_link_s li span, .local_link_s2 li span,
.tab_link_s li span, .tab_link_s2 li span{
  display:inline-block;
  position:relative;
  padding-right:20px;
}
.tab_link_s li span, .tab_link_s2 li span{
  padding-right:15px;
}
.local_link_s li span:after, .local_link_s2 li span:after,
.tab_link_s li span:after, .tab_link_s2 li span:after{
  content:"";
  position:absolute;
  top:50%;
  right:0;
  background-image:url(/components/images/ico_link_arrow@x1.png);
  background-repeat:no-repeat;
}

/* local_link_s */
.local_link_s li span:after, .local_link_s2 li span:after{
  width:10px;
  height:6px;
  margin-top:-3px;
  background-position:0 -7px;
}
.local_link_s li > a:hover span:after, .local_link_s2 li > a:hover span:after{
  background-position:-13px -7px;
}

/* tab_link_s */
.tab_link_s li span:after, .tab_link_s2 li span:after{
  width:6px;
  height:10px;
  margin-top:-5px;
  background-position:0 -26px;
}
.tab_link_s li > a:hover span:after, .tab_link_s2 li > a:hover span:after,
.tab_link_s li.current span:after, .tab_link_s2 li.current span:after{
  background-position:-13px -26px;
}
/* current */
.tab_link_s li.current > a, .tab_link_s2 li.current > a{
  color:#eb081e !important;
}

/* bgcolor */
.local_link_s.bg ul, .local_link_s2.bg ul,
.tab_link_s.bg ul, .tab_link_s2.bg ul{
  margin-left:0;
  padding:0.1em 0 0.5em;
  background-color:#f4f4f4;
}

@media (max-width: 767px){
  /* local_link_s, tab_link_s */
  .local_link_s ul, .tab_link_s ul{
    display:table;
    width:100%;
    margin-left:0;
  }
  .local_link_s li, .tab_link_s li{
    display:table-cell;
    vertical-align:middle;
    text-align:center;
    float:none;
    margin-left:0;
  }
  .local_link_s li:first-child, .tab_link_s li:first-child{
    padding-left:0;
    border-left:0;
  }
  .local_link_s.col2 li, .tab_link_s.col2 li{  width:50%;}
  .local_link_s.col3 li, .tab_link_s.col3 li{  width:33.3%;}
  .local_link_s.col4 li, .tab_link_s.col4 li{  width:25%;}

  /* local_link_s2, tab_link_s2 */
  .local_link_s2 ul, .tab_link_s2 ul{
    margin-left:0;
  }
  .local_link_s2 li, .tab_link_s2 li{
    display:block;
    float:none;
    padding:0;
    margin-left:0;
    border-left:0;
  }
  .local_link_s2 li > a, .tab_link_s2 li > a{
    padding:3px 0;
  }

  .local_link_s li span, .local_link_s2 li span{
    padding-right:20px;
  }
  .tab_link_s li span, .tab_link_s2 li span{
    padding-right:15px;
  }

  /* bgcolor */
  .local_link_s.bg ul, .tab_link_s.bg ul{
    padding:0.5em 0;
  }
  .local_link_s2.bg ul, .tab_link_s2.bg ul{
    padding:0.1em 1em 0.5em;
  }
  .local_link_s.bg li:first-child, .tab_link_s.bg li:first-child{
    padding-left:1em;
  }
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),　only screen and (-o-min-device-pixel-ratio: 3 / 2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .local_link_s li span:after, .local_link_s2 li span:after,
  .tab_link_s li span:after, .tab_link_s2 li span:after {
    background-image:url(/components/images/ico_link_arrow@x2.png);
    background-repeat: no-repeat;
    -moz-background-size:24px 35px;
    -o-background-size:24px 35px;
    -webkit-background-size:24px 35px;
    background-size:24px 35px;
  }

  /* local_link_s */
  .local_link_s li span:after, .local_link_s2 li span:after{
    width:10px;
    height:6px;
    background-position:0 -7px;
  }
  .local_link_s li > a:hover span:after, .local_link_s2 li > a:hover span:after{
    background-position:-12px -7px;
  }

  /* tab_link_s */
  .tab_link_s li span:after, .tab_link_s2 li span:after{
    width:6px;
    height:10px;
    background-position:0 -25px;
  }
  .tab_link_s li > a:hover span:after, .tab_link_s2 li > a:hover span:after,
  .tab_link_s li.current span:after, .tab_link_s2 li.current span:after{
    background-position:-12px -25px;
  }
}


/* column
------------------------------------------------------------*/
#main_body .mb_frame{
  overflow:hidden;
}
#main_body .mb_frame .innerFrame{
  padding-right:1em;
}

/* 3 clomun */
#main_body .mb_frame .mb_3col{
  width:33.3%;
  float:left;
}
#main_body .mb_frame .mb_3col .innerFrame h3{
  padding-top:0;
}
#main_body .mb_frame .mb_3col_border .innerFrame{
  padding-left:2em;
  padding-right:0;
}
#main_body .mb_frame .mb_3col_border .innerFrame h3{
  padding-top:0;
}
@media (max-width: 767px) {
  #main_body .mb_frame .mb_3col{
    width:auto;
    float:none;
    border-left:none;
  }
  #main_body .mb_frame .mb_3col .innerFrame{
    padding-left:0;
  }
  #main_body .mb_frame .mb_3col .innerFrame h3{
    padding-top:1.5em;
  }
}

/* 2 clomun - additional setting */
#main_body .mb_frame .mb_2col.w65{
  width:65%;
}
#main_body .mb_frame .mb_2col.w35{
  width:35%;
}
@media (max-width: 767px) {
  #main_body .mb_frame .mb_2col.w65,
  #main_body .mb_frame .mb_2col.w35{
    width:auto;
  }
}

/* image + text
------------------------------------------------------------*/
.col2_image_l,
.col2_image_r,
.col2_image_l .text,
.col2_image_r .text{
  overflow:hidden;
}
.col2_image_l .image{
  float:left;
  margin-right:1.5em;
}
.col2_image_r .image{
  float:right;
  margin-left:1.5em;
}

@media (max-width: 767px) {
  .col2_image_l .image,
  .col2_image_r .image{
    float:none;
    margin:0 0 1em;
    text-align:center;
  }
  .col2_image_l .image img,
  .col2_image_r .image img{
    display:inline-block;
    max-width:100%;
  }
}









/*=======================================================================
 EXISTING MODULE
=======================================================================*/

/* common setting
------------------------------------------------------------*/
#main_visual img{
  width:100%;
  height:auto;
}

h1, h2, h3, h4, h5, h6 {
  font-family: toyotaDisplay, Verdana, Helvetica, Arial, sans-serif;
  color: #000;
}


/* detail page common setting (from common_add.css)
------------------------------------------------------------*/
#main_body_wrapper{
  width:100%;
  border-bottom:1px solid #ccc;
}
#main_body{
  margin:0 auto;
  padding:48px 10% 40px;
}
#main_body h2{
  padding-bottom:0.8em;
  text-align: center;
  font-size: 32px;
  color: #000;
}
#main_body h2 img{
  display:inline;
  max-width:100%;
  height:auto;
  margin-left:auto;
  margin-right:auto;
}
#main_body h3, #main_body h4, #main_body h5{
  padding-top:1.5em;
  padding-bottom:0.3em;
  color: #000;
}
#main_body h2 .note, #main_body h3 .note, #main_body h4 .note, #main_body h5 .note{
  font-weight:normal;
  font-size:100%;
}
#main_body p{
  padding-top:0.8em;
}
#main_body .mb_auto{
  margin-right:auto;
  margin-left:auto;
}
#main_body .mb_img{
  max-width:100%;
  padding-top:1em;
}
#main_body .mbi_caption{
  display:block;
  font-size:90%;
  padding-top:0.6em;
  padding-bottom:2em;
}
@media (max-width: 767px) {
  #main_body .mbi_caption{
    text-align:center;
  }
}

/* 2 column
------------------------------------------------------------*/
#main_body .mb_frame .mb_2col{
  width:50%;
  float:left;
}
#main_body .mb_frame .mb_2col .innerFrame h3{
  padding-top:0;
}
#main_body .mb_frame .mb_2col_border{
  border-left:1px solid #ccc;
  width:49%;
  min-height:11em;
  float:left;
}
#main_body .mb_frame .mb_2col_border .innerFrame{
  padding-left:2em;
  padding-right:0;
}
#main_body .mb_frame .mb_2col_border .innerFrame h3{
  padding-top:0;
}
@media (max-width: 767px) {
  #main_body .mb_frame .mb_2col,
  #main_body .mb_frame .mb_2col_border{
    width:auto;
    float:none;
    border-left:none;
  }
  #main_body .mb_frame .mb_2col .innerFrame,
  #main_body .mb_frame .mb_2col_border .innerFrame{
    padding-left:0;
  }
  #main_body .mb_frame .mb_2col .innerFrame h3,
  #main_body .mb_frame .mb_2col_border .innerFrame h3{
    padding-top:1.5em;
  }
}

/* blueBoxArea
------------------------------------------------------------*/
.blueBoxArea {
  margin-top:20px;
  padding:15px;
  background-color:#f0f4f6;
  word-wrap:break-word;
}
#main_body .blueBoxArea p:first-child{
  padding-top:0;
}
.blueBoxArea dt.title {
  color:#333;
  font-size:108%;
  line-height:1.5;
}

/* table
------------------------------------------------------------*/
/* design1 */
table.design1{
  width: 100%;
  margin: 20px auto;
  border-collapse: collapse;
  background-color: #585656;
  border:1px solid #585656;
}
table.design1 td{
  padding: 6px;
  background: #fff;
  border:1px solid #585656;
  line-height: 1.5;
}
table.design1 th{
  padding: 6px;
  border-bottom:1px solid #c9c9ca;
  border-right:1px solid #c9c9ca;
  line-height: 1.5;
  color: #fff;
  white-space:nowrap;
}
table.design1 th.last{
  border-bottom:none !important;
  border-right:none !important;
}

/* design2 */
table.design2 {
  width:100%;
  margin:20px auto;
  border-collapse: collapse;
  border-top: solid 1px #999;
  border-right: solid 1px #999;
}
table.design2 td,
table.design2 th {
  padding: 6px;
  border-left: solid 1px #999;
  border-bottom: solid 1px #999;
  line-height: 1.5;
}
table.design2 th {
  background-color: #e5e5e5;
  white-space:nowrap;
}

/* diagram
------------------------------------------------------------*/
.diagram {
  width: 100%;
  margin: 20px 0;
  border-collapse: separate;
  empty-cells: show;
  border-spacing: 0;
  border: none;
  border-top: 1px solid #d2d7dc;
}
.diagram th, .diagram td {
  padding: 5px 10px;
  border-bottom: 1px solid #d2d7dc;
  vertical-align: middle;
}
.diagram th {
  vertical-align: top;
  text-align: left;
  font-weight: bold;
  white-space:nowrap;
}
.diagram tr.dot th,
.diagram tr.dot td {
  border-bottom: 1px dotted #d2d7dc;
}

/* color diagram */
.color_diagram {
  width: 100%;
  margin: 20px 0;
  border-collapse: collapse;
  empty-cells: show;
  border-spacing: 0;
  border: none;
  border-top: 2px solid #d2d7dc;
}
.color_diagram th, .color_diagram td {
  padding: 5px 10px;
  border-bottom: 1px solid #d2d7dc;
  vertical-align: middle;
}
.color_diagram th {
  background-color: #f0f4f6;
  text-align: left;
  font-weight: bold;
  white-space:nowrap;
}