@charset "UTF-8";

/* clearfix
----------------------------------------------------*/
.clearfix,
#global_header #header_inner,
#global_nav ul,
#contents_inner {
  *zoom: 1;
}
.clearfix:after,
#global_header #header_inner:after,
#global_nav ul:after,
#contents_inner:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

/* layout parts
----------------------------------------------------*/
.heading_lv1 {
  margin-bottom: 10px;
  padding-top: 12px;
  padding-bottom: 0;
  padding-left: 12px;
  padding-right: 10px;
  background-image: url(../images/bg_h_01.png);
  background-position: left top;
  background-repeat: no-repeat;
  color: #545454;
  font-size: 108%;
  font-weight: bold;
}
.heading_lv1 span {
  padding-left: 18px;
  font-weight: normal;
  font-size: 94%;
}
.heading_lv2,
.heading_lv3 {
  margin-bottom: 10px;
  font-size: 108%;
  font-weight: bold;
}

.block {
  margin-bottom: 60px;
  *zoom: 1;
}
.block p, .block li, .block dt, .block dd {
  line-height: 1.9;
}
.block p .underline01 {
  border-bottom: 1px solid red;
}

/* Topics(News)
----------------------------------------------------*/
#topics {
  overflow: hidden;
  margin-bottom: 25px;
}
#topics header {
  margin-bottom: 10px;
  overflow: hidden;
  *zoom: 1;
}
#topics header h1 {
  float: left;
}
#topics #custom_scroll {
  height: 120px;
  padding: 5px 22px 5px 10px;
}
.category_airsoft #topics #custom_scroll {
  height: 206px;
}
#topics dl {
  overflow: hidden;
  *zoom: 1;
}
#topics dl dt {
  float: left;
  padding-right: 5px;
  color: #545454;
  font-weight: bold;
  line-height: 1.6;
}
#topics dl dd {
  margin-bottom: 4px;
  padding-bottom: 3px;
  padding-left: 12.5em;
  border-bottom: 1px dotted #afafaf;
  background-position: 7em 5px;
  background-repeat: no-repeat;
  line-height: 1.6;
}
#topics dl dd.event {
  background-image: url(../../images/ic_topics_01.gif);
}
#topics dl dd.campaign {
  background-image: url(../../images/ic_topics_02.gif);
}
#topics dl dd.product {
  background-image: url(../../images/ic_topics_03.gif);
}
#topics dl dd.news {
  background-image: url(../../images/ic_topics_04.gif);
}
#topics dl dd.media {
  background-image: url(../../images/ic_topics_05.gif);
}
#topics dl dd.info {
  background-image: url(../../company/news/images/ic_news_01.png);
  background-position: 7em 4px;
}
#topics dl dd.newproduct {
  background-image: url(../../company/news/images/ic_news_02.png);
  background-position: 7em 4px;
}
#topics dl dd em {
  color: #545454;
}
#topics dl dd a {
  color: #808080;
}

/* Tab
----------------------------------------------------*/
#tab_area {
  margin-bottom: 10px;
  *zoom: 1;
}
#tab_area #tab {
  overflow: hidden;
  *zoom: 1;
}
#tab_area #tab li {
  float: left;
  margin-right: 5px;
}
#tab_area #panel {
  border: 1px solid #afafaf;
}

/* Search Box
----------------------------------------------------*/
.product_search {
  overflow: hidden;
  margin-bottom: 15px;
  padding: 10px 10px 10px 13px;
  border: 3px solid #e7e7e7;
  background-color: #fefefe;
  background-image: url(../../products/images/bg_search_01.png);
  background-position: left bottom;
  background-repeat: repeat-x;
  *zoom: 1;
}
.product_search h2 {
  float: left;
  margin-right: 13px;
}
.product_search h2 img {
  *vertical-align: bottom;
}
.product_search input[type="text"] {
  float: left;
  width: 275px;
  height: 17px;
  padding: 3px;
  padding-left: 29px;
  border: 1px solid #d6d6d6;
  background-image: url(../../products/images/ic_search_01.png);
  background-position: 3px center;
  background-repeat: no-repeat;
}
.product_search input[type="image"] {
  float: left;
  padding-left: 5px;
}
.product_search .btn_option {
  float: left;
  width: 142px;
  padding-left: 5px;
}

/* Module
----------------------------------------------------*/
/* Font */
.att {
  color: #e91b00;
  font-size: 108%;
  font-weight: bold;
}

.att02 {
  color: #e91b00;
  font-size: 97%;
  font-weight: bold;
}

.att03 {
  color: #e91b00;
}

.str {
  font-weight: bold;
  font-size: 125%;
}
.str02 {
  font-weight: bold;
}
.str03 {
  font-weight: bold;
  font-size: 125%;
  color: #464646
}

.em {
  color: #545454;
}

.sup {
  font-size: 91%;
}
.sup_r {
  font-size: 91%;
  color: #e91b00;
}

.box_c {
  text-align: center;
}
.en {
  color: #0048a1;
}
.en02 {
  color: #0048a1;
  font-size: 125%;
  font-weight: bold;
}
.comment {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 91%;
}
.comment_plusharf {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.comment2 {
  text-indent: -2em;
  padding-left: 2em;
}
ul.indentation > li {
  text-indent: -1em;
  margin-left: 1em;
}

.bnr_l {
  margin-bottom: 20px;
}
.bnr_l:first-of-type {
  margin-bottom: 8px;
}

.pgtop {
  clear: both;
  margin-bottom: 15px;
  text-align: right;
  *zoom: 1;
}

.bd_btm {
  border-bottom: dotted 1px #b0b0b0;
}

.arrow {
  margin-right: 5px;
}
/* Float */
.img_l {
  float: left;
  padding-right: 10px;
  padding-bottom: 5px;
}

.img_r {
  float: right;
  padding-left: 10px;
  padding-bottom: 5px;
}

.img_l + * {
  overflow: hidden;
}

.img_r + * {
  overflow: hidden;
}

dl.box_l, dl.box_r {
  overflow: hidden;
  *zoom: 1;
}
dl.box_l p, dl.box_r p {
  margin-bottom: 10px;
}
dl.box_l .end, dl.box_r .end {
  margin-bottom: 0;
}
dl.box_l dd, dl.box_r dd {
  overflow: hidden;
}
dl.box_l .wrap, dl.box_r .wrap {
  overflow: visible;
}
dl.box_l dt {
  float: left;
  padding-right: 15px;
  padding-bottom: 10px;
}
dl.box_r dt {
  float: right;
  padding-left: 15px;
  padding-bottom: 10px;
}

.box_float {
  overflow: hidden;
}
.box_float .item_l {
  float: left;
}
.box_float .item_r {
  float: right;
}


/* Border */
.bd_b {
  border-bottom: 1px dotted #afafaf;
}

.bd_t {
  border-top: 1px dotted #afafaf;
}
.bd_n {
  border: none !important;
}
/* Link icon - arrow1 */
.link1 {
  background-image: url(../images/ic_arrow_02.png);
  background-position: 0 5px;
  background-repeat: no-repeat;
  padding-left: 12px;
}
.link2 {
  background-image: url(../images/ic_arrow_10.gif);
  background-position: 0 2px;
  background-repeat: no-repeat;
  padding: 2px 0 2px 20px;
}

.boxlink {
  display: inline-block;
  background-image: url(../../guide/images/bg_boxlink_01.jpg);
  line-height: 1.4;
}
*:first-child + html .boxlink {
  display: inline;
}
.boxlink:hover {
  background-image: url(../../guide/images/bg_boxlink_01_o.jpg);
}
.boxlink a {
  padding: 3px 12px 2px 20px;
  display: inline-block;
  background-image: url(../../guide/images/ic_boxlink_01.gif);
  background-repeat: no-repeat;
  background-position: 10px 48%;
}

/* Link list */
ul.list1,
ul.list2,
ul.list4,
ul.list5,
ul.list6 {
  margin-bottom: 1em;
}
ul.list1 li,
ul.list2 li,
ul.list4 li,
ul.list5 li,
ul.list6 li {
  padding-left: 1em;
  background-image: url(../images/ic_list_01.gif);
  background-position: 0 4px;
  background-repeat: no-repeat;
}
ul.list2 li {
  background-image: url(../images/ic_list_02.gif);
  background-position: 0 5px;
}
/* ul.list3 li { */
/* 	background-image: url(../images/ic_arrow_03.gif); */
/* 	background-position: 0 5px; */
/* } */
ul.list4 li {
  background-image: url(../images/ic_arrow_03.png);
  background-position: 0 6px;
}
ul.list5 li {
  background-image: url(../images/ic_arrow_04.png);
  background-position: 0 6px;
}
ul.list6 li {
  background-image: url(../images/ic_arrow_05.gif);
  background-position: 0 6px;
}

/* Number list */
ol.number li {
  padding-left: 10px;
  list-style: inside decimal;
}

/* Popup ( ! addClass to "<body>") */
body.popup {
  min-width: 580px;
  padding: 20px 10px 10px;
}
body.popup1 {
  width: 580px;
  min-width: 580px;
}
body.popup #container,
body.popup #contents {
  width: auto;
}

/* multi column */
.col_2,
.col_3 {
  margin-right: -23px;
  overflow: hidden;
  *zoom: 1;
}
.col_2 .box,
.col_3 .box,
.col_2 li,
.col_3 li {
  width: 320px;
  float: left;
  margin-right: 23px;
}
.col_2 .end,
.col_3 .end {
  margin-right: 0;
}
.col_2 .thm,
.col_3 .thm {
  margin-bottom: 5px;
  text-align: center;
}
.col_2 .inner,
.col_3 .inner {
  padding: 5px;
}
.col_2 p,
.col_3 p {
  margin-bottom: 5px;
}
.col_3 .box,
.col_3 li {
  width: 202px;
}
.col_2 .txt_blu_130 {
  color: #00419d;
  font-size: 130%;
  font-weight: bold;
}

/* Data table */
table.data1,
table.data2 {
  width: 100%;
  margin-bottom: 1em;
  border-collapse: collapse;
}
table.data1 caption,
table.data2 caption {
  font-weight: bold;
  text-align: left;
  margin-bottom: 5px;
}
table.data1 th, table.data2 th,
table.data1 td, table.data2 td {
	border: 1px solid #AFAFAF;
  padding: 4px 10px;
}
table.data1 th,
table.data2 th {
  font-weight: normal;
  text-align: left;
}

table.data2 {
  margin-bottom: 30px;
  color: #4a4a4a;
}
table.data2 th,
table.data2 td {
  padding: 6px 10px;
  border: none;
	border-bottom: 4px solid #FFFFFF;
}
table.data2 th {
  width: 145px;
	background-color: #F2F2F2;
  background-image: url(../images/bg_table_th_01.gif);
  background-repeat: no-repeat;
  background-position: left bottom;
  font-weight: bold;
}
table.data2 td {
  background-image: url(../images/bg_table_td_01.gif);
  background-repeat: repeat-x;
  background-position: 2px bottom;
}

/* 簡易ロールオーバー */
.btn_easy:hover {
  opacity: 0.7;
  -moz-opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/* Nav and SNS footer */
#section_footer {
  zoom: 1;
}
@media only screen and (max-width: 768px) {
  #section_footer {
    padding-left: 16px;
    padding-right: 16px;
    overflow: visible;
  }
}
#section_footer:before,
#section_footer:after {
  content: "";
  display: table;
}
#section_footer:after {
  clear: both;
}
#section_footer nav {
  float: left;
}
#section_footer nav li {
  display: inline;
  margin-right: 17px;
  padding-right: 20px;
  border-right: 1px solid #6e6e6e;
}
#section_footer aside {
  width: 300px;
  float: right;
}
@media only screen and (max-width: 768px) {
  #section_footer aside {
    max-width: 100%;
    float: none;
    padding-top: 14px;
  }
}

/* SNS button footer */
#block_footer {
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 40px;
  width: 100%;
}
#block_footer aside {
  overflow: hidden;
  float: right;
  width: 300px;
}
#block_footer ul {
  float: left;
  margin-bottom: -30px;
}
#btn_sns {
  overflow: hidden;
  *zoom: 1;
}
#btn_sns li {
  float: left;
  overflow: hidden;
  margin-right: 7px;
}
#btn_sns #fb {
  width: 73px;
}
#btn_sns #fb .fb-like {
  width: 73px;
  overflow: hidden;
}

/* spacing classes */
.mt0 { margin-top: 0px !important; }
.mb0, .end { margin-bottom: 0px !important; }
.ml0 { margin-left: 0px !important; }
.mr0 { margin-right: 0px !important; }
.pt0 { padding-top: 0px !important; }
.pb0 { padding-bottom: 0px !important; }
.pl0 { padding-left: 0px !important; }
.pr0 { padding-right: 0px !important; }

.mt5 { margin-top: 5px !important; }
.mb5 { margin-bottom: 5px !important; }
.ml5 { margin-left: 5px !important; }
.mr5 { margin-right: 5px !important; }
.pt5 { padding-top: 5px !important; }
.pb5 { padding-bottom: 5px !important; }
.pl5 { padding-left: 5px !important; }
.pr5 { padding-right: 5px !important; }

.mt10 { margin-top: 10px !important; }
.mb10 { margin-bottom: 10px !important; }
.ml10 { margin-left: 10px !important; }
.mr10 { margin-right: 10px !important; }
.nmt10 {margin-top: -10px !important;}
.pt10 { padding-top: 10px !important; }
.pb10 { padding-bottom: 10px !important; }
.pl10 { padding-left: 10px !important; }
.pr10 { padding-right: 10px !important; }

.mt15 { margin-top: 15px !important; }
.mb15 { margin-bottom: 15px !important; }
.ml15 { margin-left: 15px !important; }
.mr15 { margin-right: 15px !important; }
.pt15 { padding-top: 15px !important; }
.pb15 { padding-bottom: 15px !important; }
.pl15 { padding-left: 15px !important; }
.pr15 { padding-right: 15px !important; }

.mt20 { margin-top: 20px !important; }
.mb20 { margin-bottom: 20px !important; }
.ml20 { margin-left: 20px !important; }
.mr20 { margin-right: 20px !important; }
.pt20 { padding-top: 20px !important; }
.pb20 { padding-bottom: 20px !important; }
.pl20 { padding-left: 20px !important; }
.pr20 { padding-right: 20px !important; }

.mt25 { margin-top: 25px !important; }
.mb25 { margin-bottom: 25px !important; }
.ml25 { margin-left: 25px !important; }
.mr25 { margin-right: 25px !important; }
.pt25 { padding-top: 25px !important; }
.pb25 { padding-bottom: 25px !important; }
.pl25 { padding-left: 25px !important; }
.pr25 { padding-right: 25px !important; }

.mt30 { margin-top: 30px !important; }
.mb30 { margin-bottom: 30px !important; }
.ml30 { margin-left: 30px !important; }
.mr30 { margin-right: 30px !important; }
.pt30 { padding-top: 30px !important; }
.pb30 { padding-bottom: 30px !important; }
.pl30 { padding-left: 30px !important; }
.pr30 { padding-right: 30px !important; }

.mt32 { margin-top: 32px !important; }
.mb32 { margin-bottom: 32px !important; }
.ml32 { margin-left: 32px !important; }
.mr32 { margin-right: 32px !important; }
.pt32 { padding-top: 32px !important; }
.pb32 { padding-bottom: 32px !important; }
.pl32 { padding-left: 32px !important; }
.pr32 { padding-right: 32px !important; }

.mt35 { margin-top: 35px !important; }
.mb35 { margin-bottom: 35px !important; }
.ml35 { margin-left: 35px !important; }
.mr35 { margin-right: 35px !important; }
.pt35 { padding-top: 35px !important; }
.pb35 { padding-bottom: 35px !important; }
.pl35 { padding-left: 35px !important; }
.pr35 { padding-right: 35px !important; }

.mt40 { margin-top: 40px !important; }
.mb40 { margin-bottom: 40px !important; }
.ml40 { margin-left: 40px !important; }
.mr40 { margin-right: 40px !important; }
.pt40 { padding-top: 40px !important; }
.pb40 { padding-bottom: 40px !important; }
.pl40 { padding-left: 40px !important; }
.pr40 { padding-right: 40px !important; }

.mt45 { margin-top: 45px !important; }
.mb45 { margin-bottom: 45px !important; }
.ml45 { margin-left: 45px !important; }
.mr45 { margin-right: 45px !important; }
.pt45 { padding-top: 45px !important; }
.pb45 { padding-bottom: 45px !important; }
.pl45 { padding-left: 45px !important; }
.pr45 { padding-right: 45px !important; }

.mt50 { margin-top: 50px !important; }
.mb50 { margin-bottom: 50px !important; }
.ml50 { margin-left: 50px !important; }
.mr50 { margin-right: 50px !important; }
.pt50 { padding-top: 50px !important; }
.pb50 { padding-bottom: 50px !important; }
.pl50 { padding-left: 50px !important; }
.pr50 { padding-right: 50px !important; }

.mb80 { margin-bottom: 80px !important; }

/* contents (Base)
----------------------------------------------------*/
#container {
  width: 960px;
  margin: auto;
  padding-left: 15px;
  padding-right: 15px;
	background-color: #FFFFFF;
}

#contents {
  width: 960px;
  margin: auto;
  font-size: 120%;
}

@media screen and (max-width: 768px) {
  #contents {
    max-width: 100%;
    width: calc(100% - 32px);
  }
}

#contents_inner {
  background-repeat: repeat-y;
  background-position: right top;
  *zoom: 1;
}

/* Bread crumb */
#topic_path {
  padding-top: 3px;
  padding-bottom: 3px;
	border-bottom: 1px solid #C8C8C8;
  font-size: 91%;
  background-color: #F5F5F5;
}
#topic_path li {
  display: inline;
}
#topic_path li a {
  padding-right: 13px;
  background-image: url(../images/ic_arrow_01.png);
  background-position: right center;
  background-repeat: no-repeat;
  color: #545454;
  text-decoration: none;
  *zoom: 1;
}
#topic_path li a:hover {
  text-decoration: underline;
}
#topic_path li a:visited {
  text-decoration: none;
}

#topic_path2 {
  margin-bottom: 15px;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 125px;
  border-bottom: 1px solid #C8C8C8;
  background-color: #F5F5F5;
  font-size: 91%;
}
#topic_path2 li {
  display: inline;
}
#topic_path2 li a {
  padding-right: 13px;
  background-image: url(../images/ic_arrow_01.png);
  background-position: right center;
  background-repeat: no-repeat;
  color: #545454;
  text-decoration: none;
  *zoom: 1;
}
#topic_path2 li a:hover {
  text-decoration: underline;
}
#topic_path2 li a:visited {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  #topic_path2 li {
    padding: 12px;
  }
}

#visual {
  height: 119px;
  min-width: 960px;
  max-width: 100%;
  margin: auto;
  background-repeat: no-repeat;
  background-position: center top;
  overflow: hidden;
  *zoom: 1;
}
#visual_inner {
  position: relative;
  width: 960px;
  margin: auto;
}
#visual_inner h1 {
  position: absolute;
}
#contents_inner {
  background-image: url(../images/bg_sub_mdl_04.gif);
  background-position: left top;
}
#main {
  float: right;
  padding-right: 17px;
}
#main #primary {
  float: left;
}
#main #secondary {
  float: right;
}

/* .page-top
----------------------------------------------------*/
.st-Footer_Pagetop {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  bottom: 16px;
  right: 16px;
  z-index: 99;
}
.st-Footer_Pagetop img:first-child {
  margin: 0 auto;
    transition: all .1s linear;
}
.st-Footer_Pagetop:hover img:first-child {
  position: relative;
  margin-top: -10px;
  margin-bottom: 10px;
}
.st-Footer_Pagetop_sp {
  display: none;
}
.st-Footer_Pagetop .st-Footer_PagetopImgSP {
  display: none;
}
.st-Footer_Pagetop {
  display: block;
  position: fixed;
  bottom: 20px;
  right: 16px;
  z-index: 99;
}
.st-Footer_Pagetop:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .st-Footer_Pagetop_sp {
    display: block;
    position: fixed;
    bottom: 14px;
    right: 16px;
    z-index: 99;
  }
  .st-Footer_Pagetop_sp:hover {
    opacity: 0.7;
  }
  .st-Footer_Pagetop .st-Footer_PagetopImgSP {
    display: block;
  }
  .st-Footer_Pagetop .st-Footer_PagetopImgPC {
    display: none;
  }
}

/* fixed header
----------------------------------------------------*/
body {
  margin-top: 90px;
}
.st-Header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

@media screen and (min-width: 769px) and (max-width: 1148px) {
  body,
  .st-Header {
    min-width: 1148px;
  }
}

@media screen and (max-width: 768px) {
  header.st-Header + * {
    margin-top: 65px;
  }
  body {
    margin-top: 0px;
  }
}
