@charset "utf-8";
html { font-size: 62.5%;}
body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
  color: #333;
  font-size: 1.8rem;
  line-height: 1.8;}
/* BB footer */
#bb_footer a,
#ex_footer a {
  color: #333;
  text-decoration: underline;
  cursor:pointer; }
#bb_footer a:hover,
#ex_footer a:hover {
  color: #333;
  text-decoration: none;}
#bb_footer {
  margin: 0;
  padding: 0;
  font-size: 1.3rem;
  background: #fff;
  color: #333;
  line-height: 1.4;
  border-top: 1px #aaa solid;
  text-align: left;
  overflow: hidden;}
#bb_footer_inr {
  max-width: 1240px;
  margin: 0 auto;
  padding: 60px 0 20px;
  overflow: hidden;}
#clm_logo {
  display: block;
  width: 100%;
  height: 50px;
  margin: 0 0 60px;
  padding: 0;
  text-align: left;
  position: relative;}
#clm_logo h3 {
  display: inline-block;
  padding:0;
  margin: 0;
  font-size: 0;
  position: absolute;
  top:0;
  left: 20px;}
#clm_logo img.bbfooter_logo {
  height: 50px;}
#clm_logo .footer_bb_toplink {
  display: inline-block;
  position: absolute;
  margin: 0;
  padding: 0;
  bottom: 5px;
  left: 210px;}
#section_serv {
  display: block;
  width: 100%;
  margin:0;
  padding:0;}
#section_serv_inr01,
#section_serv_inr02 {
  display: block;
  width: 50%;
  margin:0;
  padding:0;
  float: left;}
#bb_footer .bb_footer_clm_r01,
#bb_footer .bb_footer_clm_r02 ,
#bb_footer .bb_footer_clm_r03,
#bb_footer .bb_footer_clm_r04 {
  display:block;
  width: 50%;
  margin:0;
  padding:0;
  float: left;}
#bb_footer .footer_section {
  display: block;
  margin: 0 20px 40px;
  padding: 0;}
#bb_footer .footer_section a {
  color: #333;
  text-decoration: underline;}
#bb_footer .footer_section a:hover {
  text-decoration: none;}
#bb_footer h2 {
  display: none;}
#section_serv h3 {
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0 0 20px;
  padding: 0;
  color: #333;
  text-align: left;}
#section_serv h3:after{
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(to right, #ff0000 0%, #ddd 100%);
  margin: 1px 0 0;}
#bb_footer h4 {
  border-left:4px #ff0000 solid;
  padding-left: 6px;
  font-size: 1.3rem;
  font-weight: bold;
  margin: 0 0 10px;}
#bb_footer .no_br {
  white-space: nowrap;
  display: inline-block;}
#bb_footer a .no_br {
  text-decoration: underline;}
#bb_footer a:hover .no_br {
  text-decoration: none;}
#bb_footer .footer_section .ctg_top {
  display: inline-block;
  font-weight: bold;
  margin: 0 0 20px;}
#bb_footer .footer_section ul {
  margin: 0 0 40px;
  padding: 0;
  font-size: 0; }
#bb_footer .footer_section li {
  margin:0 0 10px;
  padding:0;
  font-size: 1.3rem;
  list-style: none;}
#bb_footer .footer_section ul.cnt_2nd {
  margin: 0 0 40px 14px;}

/* excite footer */
#ex_footer {
  margin: 0;
  padding: 0 20px;
  font-size: 1.1rem;
  line-height: 1.4;
  background: #333;
  color: #fff;
  text-align: center;}
#ex_footer_inr {
  max-width: 2000px;
  margin: 0 auto;
  padding: 40px 0;
  overflow: hidden;}
#ex_footer a {
  color: #fff; }
.company_name {
  font-size: 1.3rem;
  margin: 0 0 20px;}
#ex_footer address {
  margin: 0 auto;
  font-style: normal;
  font-weight: normal;}

/*******************************
PC
********************************/
@media (min-width: 1025px) {
.ver_pc { display: block;}
.ver_sp { display: none; }
}

/*******************************
tablet
********************************/
@media screen and (max-width: 1024px) {
.ver_pc { display: block;}
.ver_sp { display: none; }
#section_serv_inr01,
#section_serv_inr02 {
  display: block;
  width: 100%;
  margin:0;
  padding:0;
  float: left;}
}

/*******************************
SP
********************************/
@media screen and (max-width: 767px) {
.ver_pc { display: none; }
.ver_sp { display: block; }

#bb_footer {
  margin: 0;
  padding: 20px 20px 10px;
  background: #BBBEC7;}
#bb_footer_inr {
  margin: 0;
  padding: 0;}
#clm_logo {
  display: none;}
#section_serv {
  float: none;
  width: 100%;}
#bb_footer .bb_footer_clm_r01,
#bb_footer .bb_footer_clm_r02,
#bb_footer .bb_footer_clm_r03,
#bb_footer .bb_footer_clm_r04 {
  width:100%;
  float: none;
  display: block;}
#bb_footer .footer_section {
  margin: 0 0 10px;
  padding: 0;
  background: #fff;}
#bb_footer .footer_section a {
  display: block;
  padding: 15px 10px;
  color: #333;}
#bb_footer h2 {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.5rem;
  margin: 0 0 10px;
  padding: 0;}
#section_serv h3 {
  background: #333;
  background: linear-gradient(to right, #333 50%, #555);
  color: #fff;
  border: none;
  margin: 0;
  padding: 10px;
  font-size: 1.4rem;
  border-left: #ff0000 4px solid;}
#section_serv h3:after{
  content: "";
  display: block;
  height: 2px;
  background:#fff;}
#bb_footer h4 {
  background: #333;
  background: linear-gradient(to right, #333 50%, #555);
  color: #fff;
  margin: 0 10px 10px;
  padding: 10px;
  border-left:none;
  font-size:1.4rem;}
#bb_footer .footer_section .ctg_top {
  display: block;
  margin:0;
  padding: 20px 10px;
  font-size: 1.4rem;}
#bb_footer .footer_section ul {
  margin: 0;
  padding: 0;
  font-size: 0;}
#bb_footer .footer_section li {
  margin: 0;
  padding: 0;
  font-size: 1.4rem;}
#bb_footer .footer_section ul.cnt_2nd {
  background: #fff;
  color: #333;
  margin: -10px 10px 10px;
  padding: 0;
  border: 1px #BBBEC7 solid}
#bb_footer .footer_section ul.cnt_2nd li {}
#bb_footer .footer_section ul.cnt_2nd li a {}
.accordion__title {
  position: relative;
  cursor: pointer;
  user-select: none;}
.accordion__title::before,
.accordion__title::after {
  content: '';
  display: block;
  background-color: #fff;
  position: absolute;
  top: 50%;
  width: 15px;
  height: 2px;
  right: 10px;}
.accordion__title::after {
  transform: rotate(90deg);
  transition-duration: .3s;}
.accordion__title.is-active::before {
  opacity: 0;}
.accordion__title.is-active::after {
  transform: rotate(0);}
.accordion__content {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;}
.accordion__content.is-open {
  line-height: normal; /* numberに書き換える*/
  height: auto;
  opacity: 1;}
.footer_bb_toplink {
  clear: both;
  display: block;
  text-align: center;
  margin: 0 auto;
  padding: 10px;}
.footer_bb_toplink a {
  color: #333;}
#ex_footer_inr {
  padding: 30px 0;}
#ex_footer li.ver_pc {
  display: none;}

}