﻿@charset 'UTF-8';

/* accordionBlock */
.accordionBlock .accordionTitle {
  cursor: pointer; 
  color: #4c4c4c;
  border: solid 1px #ccc;
  font-weight: bold;
}
.accordionBlock .accordionTitle h2,
.accordionBlock .accordionTitle h3 {
  margin: 0;
  color: #4c4c4c;
  border: none; 
  font-size: 100%;
}
.accordionBlock .accordionTitle .accordionTitleInner {
  position: relative; 
  padding: 16px 20px;
  padding-right: 50px !important;
}
.accordionBlock .accordionTitle .accordionTitleInner:after {
  position: absolute;
  top: 50%;
  right: 20px;
  display: inline;
  width: 16px;
  height: 16px; 
  margin: -8px 0 0 0;
  content: '';
}
.accordionBlock .accordionTitle .accordionTitleInner.open:after {
  background: url('/soukin/shared/image/cmn_ico_minus_green_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle .accordionTitleInner.close:after {
  background: url('/soukin/shared/image/cmn_ico_plus_green_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle .accordionTitleInner .title {
  font-size: 133.33333%;
}
.accordionBlock .accordionTitle .accordionTitleInner .title.sml {
  font-size: 116.66667%;
}
.accordionBlock .accordionTitle .accordionTitleInner .title.lrg {
  font-size: 166.66667%;
}
.accordionBlock .accordionTitle span {
  vertical-align: middle;
}
.accordionBlock .accordionTitle.important {
  background: #fcf0ee;
}
.accordionBlock .accordionTitle.important .accordionTitleInner {
  padding: 11px 20px;
}
.accordionBlock .accordionTitle.important .accordionTitleInner:after {
  top: 50%;
  right: 10px;
  width: 34px;
  height: 34px; 
  margin: -17px 0 0;
}
.accordionBlock .accordionTitle.important .accordionTitleInner.open:after {
  background: url('/soukin/shared/image/cmn_ico_minus_oval_red_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.important .accordionTitleInner.close:after {
  background: url('/soukin/shared/image/cmn_ico_puls_oval_red_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.important .accordionTitleInner .imgIco {
  display: table-cell;
  width: 33px;
  padding: 0 14px 0 0; 
  vertical-align: top;
}
.accordionBlock .accordionTitle.important .accordionTitleInner .imgIco img {
  width: 100%;
}
.accordionBlock .accordionTitle.important .accordionTitleInner .title {
  display: table-cell;
}
.accordionBlock .accordionTitle.step {
  background: #f2f2f2;
}
.accordionBlock .accordionTitle.step .accordionTitleInner {
  display: table;
  box-sizing: border-box; 
  width: 100%;
  padding: 8px 10px;
}
.accordionBlock .accordionTitle.step .accordionTitleInner:after {
  top: 50%;
  right: 10px;
  width: 34px;
  height: 34px; 
  margin: -17px 0 0;
}
.accordionBlock .accordionTitle.step .accordionTitleInner.open:after {
  background: url('/soukin/shared/image/cmn_ico_minus_oval_blue_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.step .accordionTitleInner.close:after {
  background: url('/soukin/shared/image/cmn_ico_puls_oval_blue_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.step .accordionTitleInner .stepIcon {
  display: table-cell;
  width: 60px; 
  margin: 0 15px 0 0;
  padding: 6px 8px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  border-radius: 4px;
  background: #3491e0;
  font-size: 116.66667%;
  line-height: 1.3;
}
.accordionBlock .accordionTitle.step .accordionTitleInner .stepIcon span {
  font-size: 128.6%;
}
.accordionBlock .accordionTitle.step .accordionTitleInner .title {
  display: table-cell;
  padding: 0 0 0 15px;
}
.accordionBlock .accordionTitle.faq {
  background: #ebf9ff;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner {
  display: table;
  box-sizing: border-box; 
  width: 100%;
  padding: 8px 10px 8px 20px;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner:after {
  top: 50%;
  right: 10px;
  width: 34px;
  height: 34px; 
  margin: -17px 0 0;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner.open:after {
  background: url('/soukin/shared/image/cmn_ico_minus_oval_blue_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner.close:after {
  background: url('/soukin/shared/image/cmn_ico_puls_oval_blue_pc.png') no-repeat left top;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner .faqIcon {
  display: table-cell;
  width: 20px;
  padding: 3px 0 0; 
  vertical-align: top;
  color: #5dd7ff;
  font-size: 200%;
  line-height: 1;
}
.accordionBlock .accordionTitle.faq .accordionTitleInner .title {
  display: table-cell;
  padding: 0 0 0 15px;
}
.accordionBlock .accordionTitle.faq.wu {
  background: #ecf7dd;
}
.accordionBlock .accordionTitle.faq.wu .accordionTitleInner .faqIcon {
  color: #009748;
}

.accordionBlock .accordionCont {
  padding: 20px;
  border: solid 1px #ccc;
  border-top: none;
}
.accordionBlock .accordionCont > * + * {
  margin-top: 30px;
}
.accordionBlock .accordionCont .accordionTxt {
  font-size: 116.66667%;
  line-height: 1.6;
}
.accordionBlock .accordionCont .accordionTxt.lrg {
  font-weight: bold;
}
.accordionBlock .accordionCont > a {
  text-decoration: underline; 
  color: #333;
}
.accordionBlock .accordionCont > a:hover {
  text-decoration: none;
}
.accordionBlock .accordionCont.faq {
  display: none;
}
.accordionBlock .accordionCont.faq .answerIcon {
  display: table-cell;
  width: 20px;
  vertical-align: top; 
  color: #d403d7;
  font-size: 200%;
  font-weight: bold;
}
.accordionBlock .accordionCont.faq .answerContents {
  display: table-cell;
  width: 613px;
  padding: 0 0 0 15px;
  vertical-align: top;
  font-size: 116.66667%;
}
.accordionBlock .accordionCont.faq .answerContents > * + * {
  margin: 10px 0 0;
}
.accordionBlock .accordionCont.faq.wu {
  background: #fffeee;
}
.accordionBlock .accordionCont.faq.wu .answerIcon {
  color: #ff4f01;
}

.accordionBlock + .accordionBlock {
  margin-top: 30px;
}

@media only screen and (max-width: 768px) {
  .accordionBlock .accordionTitle .accordionTitleInner {
    padding: 14px;
    padding-right: 45px !important;
  }
  .accordionBlock .accordionTitle .accordionTitleInner:after {
    right: 7px;
    width: 15px;
    height: 15px;
    margin: -7px 0 0 0;
    background-size: contain !important;
  }
  .accordionBlock .accordionTitle .accordionTitleInner.open:after {
    background: url('/soukin/shared/image/cmn_ico_minus_green_sp.png') no-repeat left 50%;
  }
  .accordionBlock .accordionTitle .accordionTitleInner.close:after {
    background: url('/soukin/shared/image/cmn_ico_plus_green_sp.png') no-repeat left 50%;
  }
  .accordionBlock .accordionTitle .accordionTitleInner .title {
    font-size: 116.66667%;
  }
  .accordionBlock .accordionTitle .accordionTitleInner .title.lrg {
    font-size: 133.33333%;
  }
  .accordionBlock .accordionTitle.important .accordionTitleInner {
    padding: 10px;
  }
  .accordionBlock .accordionTitle.important .accordionTitleInner:after {
    right: 9px;
    width: 30px;
    height: 30px; 
    margin: -15px 0 0;
  }
  .accordionBlock .accordionTitle.important .accordionTitleInner.open:after {
    background: url('/soukin/shared/image/cmn_ico_minus_oval_red_sp.png') no-repeat left top;
  }
  .accordionBlock .accordionTitle.important .accordionTitleInner.close:after {
    background: url('/soukin/shared/image/cmn_ico_puls_oval_red_sp.png') no-repeat left top;
  }
  .accordionBlock .accordionTitle.important .accordionTitleInner .imgIco {
    width: 31px;
    padding: 0 10px 0 0;
  }
  .accordionBlock .accordionTitle.step .accordionTitleInner {
    padding: 10px;
  }
  .accordionBlock .accordionTitle.step .accordionTitleInner:after {
    right: 9px;
    width: 30px;
    height: 30px; 
    margin: -15px 0 0;
  }
  .accordionBlock .accordionTitle.step .accordionTitleInner.open:after {
    background: url('/soukin/shared/image/cmn_ico_minus_oval_blue_sp.png') no-repeat left top;
  }
  .accordionBlock .accordionTitle.step .accordionTitleInner.close:after {
    background: url('/soukin/shared/image/cmn_ico_puls_oval_blue_sp.png') no-repeat left top;
  }
  .accordionBlock .accordionTitle.step .accordionTitleInner .stepIcon {
    margin: 0 10px 0 0;
    padding: 0 5px;
    font-size: 100%;
  }
  .accordionBlock .accordionTitle.faq {
    background: #ebf9ff;
  }
  .accordionBlock .accordionTitle.faq .accordionTitleInner {
    padding-left: 12px;
  }
  .accordionBlock .accordionCont {
    padding: 12px;
  }
  .accordionBlock .accordionCont > * + * {
    margin-top: 20px;
  }
  .accordionBlock .accordionCont.faq .answerContents {
    width: auto;
  }
}
