@charset "utf-8";
#page-ttl h1 span {
  font-size: 38px;
}

.c_pink {
  color: #f06690;
}

.reason_index .c_pink {
  color: #f084b4;
}

.marker_blue {
  padding: 0 3px;
  background: linear-gradient(transparent 0%, #d4e7ef 0%);
}

.marker_org {
  padding: 0 3px;
  background: linear-gradient(transparent 0%, #fce7b8 0%);
}

.marker_pink {
  padding: 0 3px;
  background: linear-gradient(transparent 0%, #f5cee0 0%);
}

.marker_yelw {
  padding: 0 3px;
  background: linear-gradient(transparent 0%, #fee3b4 0%);
}

p.img {
  text-align: center;
}

p.img img {
  padding: 10px;
}

@media screen and (min-width: 768px) {
  p.img img {
    padding: 0;
  }
}

section {
  margin-bottom: 35px;
  padding-bottom: 35px;
  background-image: url(../images/index/bg_ttl.png);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: auto 2px;
}

@media screen and (min-width: 768px) {
  section {
    margin-bottom: 50px;
    padding-bottom: 50px;
  }
}


/*---------------------------------------------------------
--
-- reason_h2_ttl
--
*/

.reason_h2_ttl {
  margin: 0 auto 35px;
  width: 100%;
  text-align: center;
}

.reason_h2_ttl span {
  display: inline-block;
  padding: 0 3% 6px 3%;
  font-size: 18px;
  background: linear-gradient(transparent 40%, #8cd0ee 40%);
}

@media screen and (min-width: 768px) {
  .reason_h2_ttl {
    margin-bottom: 70px;
    text-align: center;
  }
  .reason_h2_ttl span {
    display: inline-block;
    padding: 0 7px 17px;
    font-size: 28px;
  }
}

.reason_h2_ttl.org span {
  background: linear-gradient(transparent 40%, #f7ad54 40%);
}

.reason_h2_ttl.pink span {
  background: linear-gradient(transparent 40%, #e9afca 40%);
}

.reason_h2_ttl.green span {
  background: linear-gradient(transparent 40%, #abd768 40%);
}


/*---------------------------------------------------------
--
-- reason_h3_ttl
--
*/

.reason_h3_ttl {
  margin-bottom: 16px;
  text-align: center;
  line-height: 1.2;
}

.reason_h3_ttl span {
  display: block;
  margin: 0 auto 10px;
  padding: 0 10px 25px;
  color: #f484b6;
  font-size: 18px;
  background-image: url(../images/index/bg_ttl.png);
  background-repeat: repeat-x;
  background-position: 0 100%;
}

.reason_h3_ttl span span {
  margin: 0 auto;
  padding: 0;
  background: none;
}

.reason_h3_ttl span span.small {
  font-size: 14px;
}

@media screen and (min-width: 768px) {
  .reason_h3_ttl span {
    display: inline-block;
    font-size: 24px;
    text-align: center;
  }
  .reason_h3_ttl span span.small {
    font-size: 18px;
  }
}

.reason_h3_ttl.green span {
  color: #6bb22d;
}

.reason_h3_ttl.blue span {
  color: #4ab3e1;
}

.reason_h3_ttl.org span {
  color: #f08300;
}


/*---------------------------------------------------------
--
-- leadTxt
--
*/

.leadTxt {
  margin-bottom: 26px;
  color: #4bb6e3;
  font-size: 16px;
  text-align: center;
  line-height: 1.2;
}

@media screen and (min-width: 768px) {
  .leadTxt {
    font-size: 20px;
  }
  .reason_index .leadTxt {
    font-size: 14px;
  }
}

.leadTxt.org {
  color: #e6781e;
}

.leadTxt.pink {
  color: #f783b4;
}

.leadTxt.green {
  color: #73af13;
}


/*---------------------------------------------------------
--
-- reason_btn
--
*/

.reason_btn {}

.reason_btn a:before {
  content: "\f105";
  font-family: FontAwesome;
  font-weight: normal;
  font-size: 16px;
  margin-right: 10px;
}

.reason_btn.green {
  color: #6bb22d;
}

.reason_btn.blue {
  color: #6ab5df;
}


/*---------------------------------------------------------
--
-- reason_btn
--
*/

.waku_white {
  padding: 20px;
  line-height: 1.714;
  background-color: #ffffff;
}


/*---------------------------------------------------------
--
-- supportContBox
--
*/

.supportContBox {
  margin-left: -2%;
  padding: 20px 10px;
  width: 104%;
  background-color: #f8f3f0;
}

@media screen and (min-width: 768px) {
  .supportContBox {
    margin: 0 auto;
    padding: 50px 60px;
    width: 100%;
  }
}


/*---------------------------------------------------------
--
-- supportContBox
--
*/

.txtBlock {
  line-height: 1.714;
}

.txtBlock p {
  line-height: 1.714;
}


/*---------------------------------------------------------
--
-- imgBlock
--
*/

.imgBlock .caption {
  display: block;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .imgBlock .caption {
    text-align: right;
  }
}


/*---------------------------------------------------------
--
-- index
--
*/

.index_headBlock {
  margin: 0 auto 30px;
  width: 96%;
  max-width: 1200px;
}

.index_headBlock .leadTxt {
  color: #3c3c3c;
  text-align: left;
  line-height: 1.714;
}

@media screen and (min-width: 768px) {
  .index_headBlock .leadTxt {
    text-align: center;
  }
}

.index_headBlock .anchor {}

.index_headBlock .anchor dl {
  margin-bottom: 30px;
}

.index_headBlock .anchor dl dt {
  margin-bottom: 17px;
  padding: 11px 0;
  color: #252525;
  font-size: 24px;
  text-align: center;
  background-color: #abd769;
  border-radius: 7px;
}

.index_headBlock .anchor dl dd {}

.index_headBlock .anchor dl dd ol {
  counter-reset: num;
  color: #abd769;
}

.index_headBlock .anchor dl:nth-child(2) dd ol {
  counter-reset: num 5;
  color: #8dd2ef;
}

.index_headBlock .anchor dl:nth-child(3) dd ol {
  counter-reset: num 10;
  color: #f6ae54;
}

.index_headBlock .anchor dl:nth-child(4) dd ol {
  counter-reset: num 15;
  color: #f097be;
}

.index_headBlock .anchor dl dd ol li {
  margin-bottom: 8px;
  padding: 8px 17px 8px 33px;
  border: 1px solid #abd769;
  border-radius: 7px;
  position: relative;
}

.index_headBlock .anchor dl dd ol li:before {
  counter-increment: num;
  content: counter(num)".";
  position: absolute;
  left: 6px;
  top: 8px;
}

.index_headBlock .anchor dl dd ol li a {
  color: #3c3c3c;
  font-size: 14px;
  text-decoration: underline;
}

.index_headBlock .anchor dl dd ol li a span.small {
  font-size: 12px;
}

.index_headBlock .anchor dl.support dt {
  background-color: #8dd2ef;
}

.index_headBlock .anchor dl.support dd ol li {
  border: 1px solid #8dd2ef;
}

.index_headBlock .anchor dl.anshin dt {
  background-color: #f6ae54;
}

.index_headBlock .anchor dl.anshin dd ol li {
  border: 1px solid #f6ae54;
}

.index_headBlock .anchor dl.hinshitu dt {
  background-color: #f097be;
}

.index_headBlock .anchor dl.hinshitu dd ol li {
  border: 1px solid #f097be;
}

@media screen and (min-width: 768px) {
  .index_headBlock .anchor dl {
    float: left;
    margin-right: 2%;
    width: 49%;
  }
  .index_headBlock .anchor dl:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 1000px) {
  .index_headBlock .anchor dl {
    float: left;
    margin-right: 4%;
    width: 22%;
  }
  .index_headBlock .anchor dl:nth-child(2n) {
    margin-right: 4%;
  }
  .index_headBlock .anchor dl:last-child {
    margin-right: 0;
  }
}


/*---------------------------------*/

.indexBlock {
  width: 100%;
  max-width: 1200px;
}

.indexBlockWrap {
  padding: 20px;
  width: 100%;
  max-width: 1200px;
}


/*---------------------------------*/

.indexBox {
  display: block;
  margin: 0 auto 20px;
  padding: 5px 5px;
  max-width: 420px;
  border: 2px solid #c8e696;
  border-radius: 20px;
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: contain;
  background-color: #ffffff;
}

.indexBox dl {}

.indexBox dl dt {
  padding: 17px 0 4px 30px;
  border-bottom: 1px dotted #959595;
  position: relative;
}

.indexBox._x2 dl dt {
  padding-left: 44px;
}

.indexBox dl dt .num {
  font-size: 36px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.indexBox dl dt h3 {
  margin-bottom: 9px;
  font-size: 12px;
}

.indexBox dl dt h3 .undermarker {
  padding: 0 3% 6px 3%;
  font-size: 16px;
  background: linear-gradient(transparent 40%, #c8e696 40%);
}

.indexBox dl dt h3 .large {
  font-size: 30px;
}

.indexBox dl dt h3 .middle {
  font-size: 16px;
}

.indexBox dl dt h3 .undermarker.small {
  font-size: 13px;
}

.indexBox dl dt p.alright {
  text-align: right;
}

.indexBox dl dt p.alright span.small {
  font-size: 10px;
}

.indexBox dl dd {
  padding: 10px 0 8px 30px;
  font-size: 14px;
  line-height: 1.333;
}

.indexBox dl dd .large {
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .indexBlockWrap {
    padding: 20px 60px;
  }
  #index_block01, #index_block03 {
    padding-top: 20px;
    background-color: #f5f5f5;
  }
  .indexBlockWrap .inner {
    position: relative;
  }
  .indexBox dl dt {
    padding: 23px 0 20px 60px;
  }
  .indexBox._x2 dl dt {
    padding-left: 90px;
  }
  .indexBox dl dt .num {
    font-size: 90px;
  }
  .indexBox dl dt h3 {
    margin-bottom: 9px;
    font-size: 24px;
  }
  .indexBox dl dt h3 .undermarker {
    padding: 0 3% 6px 3%;
    font-size: 18px;
  }
  .indexBox dl dt h3 .large {
    font-size: 50px;
  }
  .indexBox dl dt h3 .middle {
    font-size: 26px;
  }
  .indexBox dl dd {
    padding: 14px 0 12px 60px;
    font-size: 19px;
    line-height: 1.333;
  }
  .indexBox dl dd .large {
    font-size: 24px;
  }
  .indexBox dl dt p.alright span.small {
    font-size: 14px;
  }
}

@media screen and (min-width: 980px) {
  .indexBox {
    float: left;
    margin-right: 2%;
    width: 49%;
    max-width: inherit;
    vertical-align: top;
  }
  .indexBox:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 1000px) {
  .indexBox {
    max-width: 420px;
    min-height: 210px;
  }
  .indexBox dl dt {
    padding: 10px 0 10px 60px;
  }
  .indexBox dl dt h3 {
    margin-bottom: 0;
    position: relative;
  }
  .indexBox dl dt h3 .undermarker {
    padding: 0 3% 6px 3%;
    font-size: 24px;
    line-height: 1.5;
  }
  #reason1 {
    margin: 0;
    position: absolute;
    left: 50%;
    top: 48%;
    transform: translate(-50%, -50%);
  }
  #reason2 {
    float: left;
    margin-bottom: 210px;
    min-height: 210px;
  }
  #reason3 {
    float: right;
    margin-bottom: 210px;
    min-height: 210px;
  }
  #reason4 {
    float: left;
    margin-bottom: 0;
  }
  #reason5 {
    float: right;
    margin-bottom: 0;
  }
  #reason6 {
    margin: 0;
    position: absolute;
    left: 50%;
    top: 49%;
    transform: translate(-50%, -50%);
  }
  #reason7 {
    float: left;
    margin-bottom: 200px;
  }
  #reason8 {
    float: right;
    margin-bottom: 200px;
  }
  #reason9 {
    float: left;
    margin-bottom: 0;
  }
  #reason10 {
    float: right;
    margin-bottom: 0;
  }
  #reason11 {
    margin: 0;
    position: absolute;
    left: 50%;
    top: 48.4%;
    transform: translate(-50%, -50%);
  }
  #reason12 {
    float: left;
    margin-bottom: 195px;
  }
  #reason13 {
    float: right;
    margin-bottom: 195px;
  }
  #reason14 {
    float: left;
    margin-bottom: 0;
  }
  #reason15 {
    float: right;
    margin-bottom: 0;
  }
  #reason16 {
    margin: 0;
    position: absolute;
    left: 50%;
    top: 49%;
    transform: translate(-50%, -50%);
  }
  #reason17 {
    float: left;
    margin-bottom: 210px;
  }
  #reason18 {
    float: right;
    margin-bottom: 210px;
  }
  #reason19 {
    float: left;
    margin-bottom: 0;
  }
  #reason20 {
    float: right;
    margin-bottom: 0;
  }
}

#index_block02 .indexBox {
  border: 2px solid #8dd2ef;
}

#index_block03 .indexBox {
  border: 2px solid #f5d2aa;
}

#index_block04 .indexBox {
  border: 2px solid #f0d2dc;
}


/*------------------*/

.indexBox dl dt h3.blue .undermarker {
  background: linear-gradient(transparent 40%, #d4e7ee 40%);
}

.indexBox dl dt h3.org .undermarker {
  background: linear-gradient(transparent 40%, #fae6d2 40%);
}

.indexBox dl dt h3.pink .undermarker {
  background: linear-gradient(transparent 40%, #fadce9 40%);
}


/*------------------*/

#index_block02 .indexBox {
  background-color: #f5f5f5;
}

#index_block04 .indexBox {
  background-color: #f5f5f5;
}


/*------------------*/

#index_block01 .indexBox dl dt .num {
  color: #c8e696;
}

#index_block02 .indexBox dl dt .num {
  color: #8dd2ef;
}

#index_block03 .indexBox dl dt .num {
  color: #f6ae54;
}

#index_block04 .indexBox dl dt .num {
  color: #f097be;
}


/*------------------*/

#reason1 {
  background-image: url(../images/reason/index_box_bg_1.jpg);
}

#reason2 {
  background-image: url(../images/reason/index_box_bg_2.jpg);
}

#reason3 {
  background-image: url(../images/reason/index_box_bg_3.jpg);
}

#reason4 {
  background-image: url(../images/reason/index_box_bg_4.jpg);
}

#reason5 {
  background-image: url(../images/reason/index_box_bg_5.jpg);
}

#reason6 {
  background-image: url(../images/reason/index_box_bg_6.jpg);
}

#reason7 {
  background-image: url(../images/reason/index_box_bg_7.jpg);
}

#reason8 {
  background-image: url(../images/reason/index_box_bg_8.jpg);
}

#reason9 {
  background-image: url(../images/reason/index_box_bg_9.jpg);
}

#reason10 {
  background-image: url(../images/reason/index_box_bg_10.jpg);
}

#reason11 {
  background-image: url(../images/reason/index_box_bg_11.jpg);
}

#reason12 {
  background-image: url(../images/reason/index_box_bg_12.jpg);
}

#reason13 {
  background-image: url(../images/reason/index_box_bg_13.jpg);
}

#reason14 {
  background-image: url(../images/reason/index_box_bg_14.jpg);
}

#reason15 {
  background-image: url(../images/reason/index_box_bg_15.jpg);
}

#reason16 {
  background-image: url(../images/reason/index_box_bg_16.jpg);
}

#reason17 {
  background-image: url(../images/reason/index_box_bg_17.jpg);
}

#reason18 {
  background-image: url(../images/reason/index_box_bg_18.jpg);
}

#reason19 {
  background-image: url(../images/reason/index_box_bg_19.jpg);
}

#reason20 {
  background-image: url(../images/reason/index_box_bg_20.jpg);
}
#reason1, #reason6, #reason11, #reason16 {
  z-index: 999;
}


/*------------------*/

@media screen and (min-width: 1000px) {
  #reason2 dl dt {
    padding: 0 0 0 60px;
  }
  #reason3 dl dt {
    padding: 20px 0 20px 60px;
  }
  #reason6 dl dt {
    padding: 0 0 0 60px;
  }
  #reason11 dl dt {
    padding: 20px 0 20px 90px;
  }
  #reason12 dl dt {
    padding: 20px 0 20px 90px;
  }
  #reason15 dl dt {
    padding: 20px 0 20px 90px;
  }
  #reason17 dl dt {
    padding: 20px 0 20px 90px;
  }
  #reason18 dl dt {
    padding: 20px 0 20px 90px;
  }
  .indexBox#reason13 dl dt h3 .undermarker {
    line-height: inherit;
  }
  .indexBox#reason13 dl dt p {
    margin-top: 10px;
  }
}


/*---------------------------------------------------------
--
-- satisfaction s1
--
*/

#s1 .supportContBox {
  line-height: 1.714;
}

#s1 .ranking {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
	#s1 .ranking li {
	  margin: 35px auto 0;
	  padding: 25px 10px 15px;
	  width: 150px;
	  color: #e6781e;
	  font-size: 16px;
	  font-weight: bold;
	  text-align: center;
	  line-height: 1.5;
	  background-color: #ffffff;
	  position: relative;
	  min-height: 110px;
	}
}

#s1 .ranking li .num {
  display: block;
  width: 35px;
  height: 35px;
  color: #ffffff;
  font-size: 14px;
  text-align: center;
  line-height: 35px;
  background-color: #72b118;
  border-radius: 50%;
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  #s1 .supportContBox .txtBlock {
    float: left;
    width: 55%;
  }
  #s1 .supportContBox .imgBlock {
    float: right;
    width: 38%;
  }
  #s1 .supportContBox .t1 {
    margin-bottom: 30px;
  }
  #s1 .ranking {
    margin-bottom: 30px;
    text-align: center;
  }
  #s1 .ranking li {
    display: inline-block;
    vertical-align: top;
  }
}

@media screen and (min-width: 1050px) {
  #s1 .ranking li {
    float: left;
    margin-right: 17px;
  }
  #s1 .ranking li:last-child {
    margin-right: 0;
  }
}


/*---------------------------------------------------------
--
-- satisfaction s2
--
*/

@media screen and (min-width: 768px) {
	#s2 .pin li {
	  margin: 35px auto;
	  padding: 27px 5px 5px;
	  width: 190px;
	  height: 100%;
	  min-height: 145px;
	  font-size: 14px;
	  text-align: center;
	  line-height: 1.714;
	  background-color: #ffffff;
	  position: relative;
	}
}
@media screen and (max-width: 767px) {
	#s2 .pin li {
	  margin: 35px auto;
	  padding: 27px 5px 12px;
	  font-size: 14px;
	  text-align: center;
	  line-height: 1.714;
	  background-color: #ffffff;
	  position: relative;
	}
}
#s2 .pin li .icon_pin {
  display: block;
  width: 27px;
  height: 43px;
  background-image: url(../images/reason/icon_pin.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}

#s2 .pin li .price {
  padding: 0 3%;
  background: linear-gradient(transparent 40%, #dceac6 40%);
}

#s2 .t1 {
  padding-left: 40px;
  color: #73af13;
  font-size: 18px;
  line-height: 1.333;
  background-image: url(../images/reason/icon_arw.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

@media screen and (min-width: 768px) {
  #s2 .supportContBox {
    padding-top: 10px;
  }
  #s2 .pin {
    margin-bottom: 26px;
    text-align: center;
  }
  #s2 .pin li {
    display: inline-block;
    margin: 40px 13px 0;
    vertical-align: top;
  }
}

@media screen and (max-width: 767px) {
	#s1 .ranking li {
	    margin: 35px auto 0;
	    padding: 25px 10px 15px;
	    color: #e6781e;
	    font-size: 16px;
	    font-weight: bold;
	    text-align: center;
	    line-height: 1.5;
	    background-color: #ffffff;
	    position: relative;
	}
	
}

/*---------------------------------------------------------
--
-- satisfaction s3
--
*/

@media screen and (min-width: 768px) {
  #s3 .supportContBox .txtBlock {
    float: left;
    width: 55%;
  }
  #s3 .supportContBox .imgBlock {
    float: right;
    width: 38%;
  }
}


/*---------------------------------------------------------
--
-- satisfaction s4
--
*/

#s4 li {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px dotted #9d9a99;
}

#s4 li.last {
  margin-bottom: 0;
  padding-bottom: 0;
  border: 0;
}

#s4 li h3 {
  margin-left: 25px;
  margin-bottom: 20px;
  padding: 8px 0 8px 30px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.312;
  background-color: #ffffff;
  position: relative;
}

#s4 li h3 .num {
  display: block;
  width: 50px;
  height: 50px;
  color: #ffffff;
  font-size: 24px;
  text-align: center;
  line-height: 50px;
  background-color: #6cb52f;
  border-radius: 50%;
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%);
}

#s4 li p {
  line-height: 1.714;
}

#s4 li .waku_white.book {
  margin-top: 20px;
  padding: 25px 40px;
}

#s4 li .waku_white.book p {
  margin-bottom: 20px;
}

#s4 li .waku_white.book p:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  #s4 li .waku_white.book .txtBlock {
    float: left;
    width: 46%;
  }
  #s4 li .waku_white.book .imgBlock {
    float: right;
    width: 48%;
  }
  /*---------*/
  #s4 li:nth-child(2) .txtBlock {
    float: left;
    width: 55%;
  }
  #s4 li:nth-child(2) .imgBlock {
    float: right;
    width: 38%;
  }
  #s4 li:nth-child(2) .t1 {
    margin-top: 25px;
  }
  /*---------*/
  #s4 li:nth-child(3) .txtBlock {
    float: left;
    width: 55%;
  }
  #s4 li:nth-child(3) .imgBlock {
    float: right;
    width: 38%;
  }
}


/*---------------------------------------------------------
--
-- satisfaction s5
--
*/

#s5 .supportContBox {
  line-height: 1.714;
  background-image: url(../images/reason/pic_5_1_pc.jpg);
  background-repeat: no-repeat;
  background-position: 100% 100%;
}

#s5 .t1 {
  margin-bottom: 30px;
}

#s5 .checkList {
  margin-bottom: 30px;
}

#s5 .checkList li {
  margin-bottom: 5px;
  padding: 0 0 0 35px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  background-image: url(../images/reason/icon_check.png);
  background-repeat: no-repeat;
  background-position: 0 2px;
}

#s5 .checkList li .red {
  color: #e00000;
}

#s5 .checkList li .green {
  color: #63b83e;
}

#s5 .t3 {
  margin-bottom: 10px;
}

#s5 .waku_white {
  margin-top: 25px;
}

.reason_btn.blank:after {
  content: url(../images/reason/icon_blank.png);
  display: inline-block;
  margin-left: 5px;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  #s5 .checkList li {
    font-size: 20px;
  }
}


/*---------------------------------------------------------
--
-- support s6
--
*/

#s6 .reason_h2_ttl {
  letter-spacing: 10px;
}

@media screen and (min-width: 768px) {
  #s6 .supportContBox .txtBlock {
    float: left;
    width: 68%;
  }
  #s6 .supportContBox .imgBlock {
    float: right;
    width: 30%;
  }
}


/*---------------------------------------------------------
--
-- support s7
--
*/

#s7 {}

@media screen and (min-width: 768px) {
  #s7 .supportContBox .txtBlock {
    float: right;
    width: 58%;
  }
  #s7 .supportContBox .imgBlock {
    float: left;
    width: 38%;
  }
}

.support7Box {
  margin-top: 15px;
  padding: 10px;
  line-height: 1.714;
  background-color: #ffffff;
}

.support7Box h4 {
  margin-bottom: 5px;
  font-size: 16px;
}

.support7Box p {
  float: left;
  padding-right: 0;
  width: 66%;
  line-height: 1.714;
}

.support7Box img.fright {
  float: right;
  width: 27%;
}

@media screen and (min-width: 768px) {
  .support7Box {
    padding: 20px 10px 0 30px;
  }
  .support7Box h4 {
    float: left;
    font-size: 18px;
    width: 100%;
  }
}


/*---------------------------------------------------------
--
-- support s8
--
*/

#s8 .imgBlock {
  margin-top: 20px;
  padding: 10px;
  padding-bottom: 0;
  background-color: #ffffff;
}

#s8 .imgBlock h4 {
  margin: 0 auto 35px;
  width: 100%;
  text-align: center;
}

#s8 .imgBlock h4 span {
  padding: 0 3px 6px 3%;
  font-size: 18px;
  background: linear-gradient(transparent 40%, #f8cbdf 40%);
}

@media screen and (min-width: 768px) {
  #s8 .imgBlock {
    position: relative;
    padding: 20px 20px 30px;
  }
  #s8 .imgBlock h4 {
    margin-bottom: 20px;
    text-align: center;
  }
  #s8 .imgBlock h4 span {
    display: inline-block;
    padding: 0 7px 17px 7px;
    font-size: 28px;
  }
}

#s8 p.img img.pic_8_2_sp {
  padding-top: 0;
  padding-bottom: 0;
}

#s8 .pcImage {
  display: none;
}

@media screen and (min-width: 768px) {
  .spImage {
    display: none;
  }
  #s8 .pcImage {
    display: block;
  }
  #s8 .pic_8_1_sp {
    width: 61%;
  }
  #s8 .pic_8_2_pc {
    position: absolute;
    left: -30px;
    bottom: 0;
  }
  #s8 .pic_8_3_pc {
    position: absolute;
    right: -30px;
    bottom: 0;
  }
}


/*---------------------------------------------------------
--
-- support s9
--
*/

@media screen and (min-width: 768px) {
  #s9 .supportContBox .txtBlock {
    float: left;
    width: 48%;
  }
  #s9 .supportContBox .imgBlock {
    float: right;
    width: 46%;
  }
}


/*---------------------------------------------------------
--
-- support s10
--
*/

#s10 .supportContBox {
  background-image: url(../images/reason/pic_10_2_pc.jpg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
}

#s10 .supportContBox .t2 {
  margin-top: 30px;
  line-height: 1.714;
}

#s10 .supportContBox .t3 {
  margin-top: 30px;
  line-height: 1.714;
}

@media screen and (min-width: 768px) {
  #s10 {
    margin-bottom: 125px;
  }
  #s10 .supportContBox {
    background-position: 0 100%;
  }
  #s10 .supportContBox .txtBlock {
    float: left;
    width: 52%;
  }
  #s10 .supportContBox .imgBlock {
    float: right;
    width: 41%;
  }
  #s10 .supportContBox .t3 {
    margin: 30px 0 0 auto;
    width: 60%;
  }
}


/*---------------------------------------------------------
--
-- support11
--
*/

#s11 .reason_h2_ttl {
  letter-spacing: 10px;
}

@media screen and (min-width: 768px) {
  #s11 .supportContBox .txtBlock {
    float: left;
    width: 55%;
  }
  #s11 .supportContBox .imgBlock {
    float: right;
    width: 39%;
  }
  #s11 .waku_white {
    float: left;
    margin-top: 30px;
    padding: 20px 50px;
    width: 100%;
  }
}


/*---------------------------------------------------------
--
-- support12
--
*/

#s12 .supportContBox {
  background-image: url(../images/reason/pic_12_2_pc.jpg);
  background-repeat: no-repeat;
  background-position: 100% 100%;
}

@media screen and (min-width: 768px) {
  #s12 .supportContBox .txtBlock {
    float: left;
    width: 49%;
  }
  #s12 .supportContBox .imgBlock {
    float: right;
    padding-right: 10%;
    width: 44%;
  }
}


/*---------------------------------------------------------
--
-- support13
--
*/

@media screen and (min-width: 768px) {
  #s13 .supportContBox .txtBlock {
    float: right;
    width: 56%;
  }
  #s13 .supportContBox .imgBlock {
    float: left;
    width: 38%;
  }
}


/*---------------------------------------------------------
--
-- support14
--
*/

#s14 .supportContBox {
  background-image: url(../images/reason/pic_14_2_pc.jpg);
  background-position: 0 100%;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  #s14 .supportContBox .txtBlock {
    float: left;
    width: 60%;
  }
  #s14 .supportContBox .imgBlock {
    float: right;
    width: 23%;
  }
}


/*---------------------------------------------------------
--
-- support15
--
*/

@media screen and (min-width: 768px) {
  #s15 .supportContBox .txtBlock {
    float: right;
    width: 55%;
  }
  #s15 .supportContBox .imgBlock {
    float: left;
    width: 38%;
  }
}


/*---------------------------------------------------------
--
-- support16
--
*/

#s16 .reason_h2_ttl {
  letter-spacing: 10px;
}

@media screen and (min-width: 768px) {
  #s16 .supportContBox .txtBlock {
    float: left;
    width: 51%;
  }
  #s16 .supportContBox .imgBlock {
    float: right;
    width: 41%;
  }
  #s16 .supportContBox .imgBlock .caption {
    margin-top: 20px;
  }
}


/*---------------------------------------------------------
--
-- support17
--
*/

#s17 .waku_white {
  clear: both;
  margin-top: 20px;
  padding: 5px 10px;
}

@media screen and (min-width: 768px) {
  #s17 .supportContBox .txtBlock {
    float: left;
    width: 47%;
  }
  #s17 .supportContBox .imgBlock {
    float: right;
    width: 44%;
  }
  #s17 .supportContBox .t2 {
    margin-top: 40px;
    float: left;
    width: 100%;
  }
  #s17 .waku_white {
    clear: both;
    float: left;
    margin-top: 50px;
    padding: 20px;
    width: 100%;
    text-align: center;
  }
}


/*---------------------------------------------------------
--
-- support18
--
*/

#s18 .supportContBox {
  padding-bottom: 0;
}

#s18 .supportContBox .img {
  margin: 15px auto;
}

@media screen and (min-width: 768px) {
  #s18 .supportContBox .txtBlock {
    float: left;
    width: 57%;
  }
  #s18 .supportContBox .imgBlock {
    float: right;
    width: 38%;
  }
  #s18 .supportContBox .img {
    margin: 15px auto 0;
  }
}


/*---------------------------------------------------------
--
-- support19
--
*/

#s19 .waku_white {
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 20px 10px 0;
  line-height: 1.714;
}

#s19 .waku_white .txtBlock p {
  margin-bottom: 5px;
}

#s19 .waku_white .txtBlock p span.c_blue {
  display: block;
}

#s19 .waku_white .img img {
  padding-bottom: 0;
}

#s19 .txtBox {
  line-height: 1.714;
}

@media screen and (min-width: 768px) {
  #s19 .gallery li {
    float: left;
    width: 50%;
  }
  #s19 .waku_white {
    padding: 10px 20px 0 6%;
  }
  #s19 .waku_white .txtBlock {
    float: left;
    padding-top: 20px;
  }
  #s19 .waku_white .txtBlock p {
    margin: 10px 0;
  }
  #s19 .waku_white .txtBlock p span.c_blue {
    display: inline-block;
    width: 4em;
  }
  #s19 .waku_white .imgBlock {
    float: right;
  }
}


/*---------------------------------------------------------
--
-- support20
--
*/

@media screen and (min-width: 768px) {
  #s20 .supportContBox .txtBlock {
    float: left;
    width: 49%;
  }
  #s20 .supportContBox .imgBlock {
    float: right;
    width: 43%;
  }
  #s20 .img2 {
    clear: both;
    float: left;
    margin-top: 30px;
    width: 100%;
    text-align: center;
  }
}