.br-sp {display: none; }
/*==============================================================================
  header style
============================================================================= */
header .logo { float: left; width: 153px; margin: 5px 0 0; }
header .btn { float: right; width: 300px; margin: 10px 0; }
header h1 { position: absolute; top: 18px; left: 175px; font-weight: normal; }

/*==============================================================================
  cta style
============================================================================= */
.cta .bg-orange { min-width: 980px; padding: 18px 0;  background: url(../images/cta_bg01_pc.png) no-repeat 50% 0 #fd5502; }
.cta h2 {line-height: 1.3; font-size: 34px; color: #fff; font-weight: bold; }
.cta .result { position: absolute; width: 444px; top: -50px; right: -25px; }
.cta .bg-gray { padding: 56px 0 45px; background: #f3f1f1; }
.cta .tel-block { width: 458px; padding: 0 0 10px; border-right: solid 1px #333; }
.cta .tel-block dt { margin: 0 0 10px; font-size: 18px; text-align: center; }
.cta .tel-block dd { line-height: 1.2; color: #fd5502; font-family: arial; font-size: 59px; font-weight: bold; text-align: center; }
.cta .tel-block dd .time { color: #333; line-height: 1.4; font-size: 16px; font-weight: normal; text-align: center; }
.cta .mail-block { width: 522px;}
.cta .mail-block dt { margin: 0 0 12px; font-size: 18px; text-align: center; }
.cta .mail-block dd { width: 438px; margin: 0 auto; }

.cta .icon-01,.cta .icon-02 { position: relative; }
.cta .icon-01:after { position: absolute; top: 0px; left: -25px; width: 13px; height: 19px; background: url(../images/cta_icon01.png)no-repeat; background-size: cover; content: ""; }
.cta .icon-02:after { position: absolute; top: 2px; left: -30px; width: 20px; height: 15px; background: url(../images/cta_icon02.png)no-repeat; background-size: cover; content: ""; }
.cta .caution { padding: 12px 0; font-size: .9rem; }

/*==============================================================================
  hero style
============================================================================= */
.hero .bg { min-width: 980px; padding: 40px 0; background: url(../images/hero_bg01_pc.jpg)no-repeat 50% 0; background-size: cover; }
.hero h2 { width: 1183px; margin: 0 0 17px; }
.hero .lead { width: 1016px; margin-left: -15px; }
.hero .list { position: absolute; width: 650px; top: 173px; left: 292px;}
.hero .item { width: 199px; }
.hero .item dt { line-height: 1.2; margin: 10px 0 0; color: #f8f8fa; font-size: 20px; text-align: center; }
.hero .item dd { color: #fff; font-size: 22px; text-align: center; }

/*==============================================================================
  feature style
============================================================================= */
.feature .bg { background: #55c3f1; padding: 40px 0; }
.feature .bg-white { padding: 27px 0 35px; }
.feature .balloon { width: 1030px; margin: 0 0 34px -26px; }
.feature h2 { margin: 0 0 10px; font-size: 42px; font-weight: bold; text-align: center; }
.feature h2 .large-font { font-size: 52px; }
.feature h2 .blue { color: #54c2f0; }

/*==============================================================================
  merit style
============================================================================= */
.merit .bg { min-width: 980px; background: url(../images/merit_bg01_pc.jpg)no-repeat 50% 0;  padding: 40px 0; }
.merit .balloon { width: 887px; margin: 0 auto 34px; }
.merit h2 { margin: 0 0 38px; font-size: 38px; font-weight: bold; text-align: center; }
.merit h2 .sup { position: absolute; top: -24px; left: 0; width: 100%; font-size: 18px; font-weight: normal; text-align: center; }
.merit .list { height: 218px; background: url(../images/merit_bg02_pc.png)no-repeat; background-size: cover; }
.merit .item { width: 300px; line-height: 1.45; padding: 132px 0 0; color: #fff; font-size: 22px; font-weight: bold; text-align: center; }

/*==============================================================================
  result style
============================================================================= */
.result .bg { padding: 64px 0 38px; min-width: 980px; background: url(../images/result_bg01_pc.jpg)no-repeat 50% 0; background-size: cover; }
.result h2 { width: 590px; margin: 0 auto 46px 0; text-align: center; font-size: 43px; font-weight: bold; }
.result h2 .deco:before { position: absolute; top: 0; left: -30px; background: #333; width: 2px; height: 95%; transform: rotate(-30deg);content: ""; }
.result h2 .deco:after { position: absolute; top: 0; right: -27px; background: #333; width: 2px; height: 95%; transform: rotate(30deg);content: ""; }
.result h2 .large-font { font-size: 72px; }
.result h2 .blue { color: #55c3f1; }
.result h3 { position: absolute; top: 16px; left: 0; width: 100%; height: 105px; line-height: 105px; color: #fff; font-size: 43px; text-align: center; }
.result h3 .num {font-size: 76px; }
.result .caution { position: absolute; bottom: 40px; left: 50px; font-size: .9rem; }

/*==============================================================================
  voice style
============================================================================= */
.voice .bg { min-width: 980px; padding: 110px 0 55px; background: url(../images/voice_bg01_pc.jpg) no-repeat 50% 0; }
.voice h2 { margin: 0 0 48px; font-size: 48px; text-align: center; }
.voice h2 .sup { position: absolute; top: -24px; left: 0; width: 100%; font-size: 18px; font-weight: normal; text-align: center; }
.voice h2 .bracket { position: relative; display: inline-block; line-height: 1.65; padding: 0 50px; font-size: 50px; }
.voice h2 .bracket:before { position: absolute; top: -28px; left: 0; width: 27px; height: 76px; border-top: 4px solid #333;  border-left: 4px solid #333; content: ""; }
.voice h2 .bracket:after { position: absolute; top: -7px; right: 0; width: 27px; height: 76px; border-bottom: 4px solid #333;  border-right: 4px solid #333; content: ""; }
.voice h2 .blue { color: #55c3f1; }
.voice h3 { height: 60px; line-height: 60px; margin: 0 0 50px; background: url(../images/voice_bg02_pc.png)no-repeat; color: #fff; font-size: 30px; text-align: center; }
.voice .slider-item { width: 980px!important; padding: 40px 65px; border: #55c3f1 solid 3px; background: #fff; }
.voice .slider-item .photo { position: absolute; top: 0; left: 0; width: 245px; }
.voice .slider-item .txt-block { width: 550px; margin: 0 0 40px auto; }
.voice .slider-item .txt-block h4 { margin: 0 0 15px; font-size: 26px; }
.voice .slider-item .txt-block .txt { width: 102%; }
.voice .slider-item .before,.voice .slider-item .after { position: relative; width: 380px; }
.voice .slider-item .before:after { position: absolute; top: 11px; left: 407px; width: 0; height: 0; border-style: solid; border-width: 15px 0 15px 30px; border-color: transparent transparent transparent #fdad4b; content: ""; }
.voice .slider-item dt { height: 55px; line-height: 55px; margin: 0 0 25px; background: #c5c2c2; font-size: 24px; font-weight: bold; text-align: center; }
.voice .slider-item .after dt { background: #fc3a8c; color: #fff; }
.voice .slider-item dd { position: relative; width: 105%; line-height: 1.4; padding: 0 0 10px 55px; font-size: 20px; font-weight: bold; }
.voice .slider-item dd:after { position: absolute; top: -3px; left: 17px; width: 10px; height: 20px; border-top: solid 4px; border-left: solid 4px; border-color: #c5c2c2; transform: rotate(-135deg); content: ""; }
.voice .slider-item .after dd:after { border-color: #fc3a8c; }

.bx-wrapper { position: relative; }
#voice-pager { width: 882px; margin: 0 auto 25px; }
#voice-pager .pager { display: block; width: 212px; height: 90px; line-height: 1.55; padding-top: 7px; background: #6d6e6f; border-radius: 5px; border-bottom: #2a2c2d solid 3px; background: linear-gradient(#6d6e6f 50%,#5f6265 50%); color: #fff; font-style: italic; font-size: 24px; font-weight: bold; text-align: center; box-sizing: border-box; }
#voice-pager .pager .num { line-height: 1; font-size: 30px; }
#voice-pager .pager.active {  background: #55c3f1; border-bottom: #1a6a93 solid 3px; background: linear-gradient(#55c3f1 50%,#41b3e2 50%); }

.voice .bx-prev { position: absolute; top: 50%; left: -25px; margin-top: -27px; width: 54px; z-index: 10000; }
.voice .bx-next { position: absolute; top: 50%; right: -25px; margin-top: -27px; width: 54px; z-index: 10000;}

/*==============================================================================
  select style
============================================================================= */
.select .bg { padding: 20px 0 42px; }
.select h2 { margin: 0 0 33px; font-size: 44px; text-align: center; }
.select h2 .sup { position: absolute; top: -24px; left: 0; width: 100%; font-size: 18px; font-weight: normal; text-align: center; }
.select .list { width: 1038px; margin: 0 0 0 -29px; }
.select .item { position: relative; width: 346px; }
.select .item h3 { position: absolute; top: 40px; left: 0; width: 100%; color: #fff; font-size: 22px; text-align: center; }
.select .item-01 h3 { top: 55px; }

/*==============================================================================
  diffrence style
============================================================================= */
.difference .ttl-block { margin: 60px 0 0; padding: 20px 0; background: #55c3f1; }
.difference .balloon { position: absolute; top: -32px; left: 146px; width: 194px; }
.difference .ttl-block h2 { margin: 0 0 0 370px;  color: #fff; color: #fff; font-size: 48px; }
.difference .ttl-block h2 .large-font { font-size: 59px; }
.difference .main-block { margin: 32px 0 50px; box-shadow: #54c2f0 0 0 20px; }
.difference .main-block h3 { padding: 10px 0; background: #54c2f0; color: #fff; font-size: 36px; text-align: center; }
.difference .main-block .txt { line-height: 1.2; padding: 22px 0 27px; background: url(../images/dirrerence_deco01.png) no-repeat 50% 0 #136688; background-size: cover; color: #fff; font-size: 48px; font-weight: bold; text-align: center; letter-spacing: .07rem; }
.difference .main-block .txt .num { font-size: 64px; }

/*==============================================================================
  missmach style
============================================================================= */
.missmach .red { color: #ae2121;}
.missmach .bg { position: relative; padding: 45px 0 15px; background: #f8f8f8; }
.missmach h2 { margin: 0 0 32px; font-size: 43px; text-align: center; }
.missmach h2 .deco { position: relative; display: inline-block; margin: 0 0 20px; }
.missmach h2 .deco:before { position: absolute; top: 0; left: -30px; background: #333; width: 2px; height: 95%; transform: rotate(-30deg);content: ""; }
.missmach h2 .deco:after { position: absolute; top: 0; right: -27px; background: #333; width: 2px; height: 95%; transform: rotate(30deg);content: ""; }
.missmach .item { display: table; width: 466px; margin: 0 0 34px; border: #6d6e6f solid 2px; background: #fff;}
.missmach .item .photo { display: table-cell; width: 114px; height: 119px; }
.missmach .item .photo img { width: 100%; }
.missmach .item .txt { display: table-cell; width: 348px; padding: 0 0 0 14px; font-size: 22px;font-weight: bold; vertical-align: middle; }
	
/*==============================================================================
  reason style
============================================================================= */
.reason .bg { min-width: 980px; padding: 105px 0 52px; background: url(../images/reason_bg01.jpg)no-repeat 50% 0; background-size: cover; }
.reason .ttl-block .bg-blue { width: 548px; height: 72px; line-height: 72px; margin: 0 auto 28px; background: #55c3f1; color: #fff; font-size: 34px; font-weight: bold; text-align: center; }
.reason .ttl-block .bg-blue .deco:before,.reason .ttl-block .bg-blue .deco:after { background: #fff; top: 13px; height: 60%; }
.reason .ttl-block h2 { margin: 0 0 28px; font-size: 44px; text-align: center; }
.reason .ttl-block .blue { color: #54c2f0; font-size: 60px; }

.reason .item { width: 930px; margin: 0 auto 23px; }
.reason .item .bg-white { position: relative; padding: 26px 0 34px; }
.reason .item .lead { line-height: 1.35; margin: 0 0 22px; color: #0e6386; font-size: 28px; font-weight: bold; text-align: center; }
.reason .item-01 .pic { width: 872px; margin: 0 auto 23px; }
.reason .item-01 .txt { padding: 0 50px; line-height: 1.7; font-size: 18px; }

.reason .item-02 .lead { margin: 0 0 30px; }
.reason .item-02 .pic { position: absolute; top: 140px; left: 30px; width: 415px; }
.reason .item-02 .txt { width: 440px; line-height: 1.9; margin: 0 0 0 455px; font-size: 18px; }
.reason .item-02 .txt + .txt { margin-top: 20px;}

.reason .item-03 .bg-white { padding: 26px 53px 34px; }
.reason .item-03 .lead { margin: 0 0 10px; font-size: 34px; }
.reason .item-03 h4 { margin: 0 0 27px; font-size: 22px; text-align: center; }
.reason .item-03 h4 .small-font { font-size: 18px; }
.reason .item-03 .adviser-item { position: relative; background: linear-gradient(#fff,#fff 30%,#fdffe1); }
.reason .item-03 .pic { position: absolute; bottom: 0;  width: 260px; }
.reason .item-03 .adviser-item-02 .pic { left: auto; right: 0; }
.reason .item-03 .txt-block { width: 564px; padding: 20px 25px; font-size: 15px; }
.reason .item-03 .txt-block h5 { display: flex; align-items: baseline; margin: 0 0 14px; color: #0e6386; font-size: 20px; font-weight: bold; }
.reason .item-03 .txt { margin: 0; }
.reason .item-03 .btm-txt { margin-top: 22px; font-size: 18px; }
.reason .item-03 .txt + .txt { margin-top: 20px;}

/*==============================================================================
  support style
============================================================================= */
.support .bg { padding: 68px 0 32px; }
.support .ttl-block { width: 882px; margin: 0 auto 30px; }
.support .ttl-block h2 { position: relative; margin: 0 0 50px; padding: 0 0 15px; border-bottom: #8d8d8d solid 20px; font-size: 42px; text-align: center; }
.support .ttl-block h2 .blue {  color: #56c4f2; font-size: 50px; }
.support .ttl-block h2:before { position: absolute; bottom: -13px; left: 4px; width: 874px; height: 13px; background: #fff;  content: ""; }
.support .ttl-block h2:after { position: absolute; bottom: -32px; left: 50%; width: 0; height: 0; border-style: solid; border-width: 13px 8px 0 8px; border-color: #8d8d8d transparent transparent transparent; content: ""; }
.support .ttl-block .lead { font-size: 36px; font-weight: bold; text-align: center; }
.support .ttl-block .lead .sup { position: absolute; top: -24px; left: 0; width: 100%; font-size: 18px; font-weight: normal; text-align: center; }
.support .step-item { padding: 0 0 36px; }
.support .step-item dt { position: relative; height: 88px; line-height: 88px; border: #55c3f1 solid 2px; border-radius: 5px; background: linear-gradient(#fff 50%,#f5f5f5 50%); font-style: italic; font-weight: bold; box-shadow: #0988c9 0px 3px 0px}
.support .step-item dt:before { position: absolute; top: -2px; right: 0; width: 137px; height: 88px; border-radius: 5px; background: linear-gradient(#55c3f1 50%,#41b3e2 50%); content: ""; }
.support .step-item dt:after { position: absolute; top: 0; bottom: 0; right: 60px; width: 0; height: 0; margin: auto 0; border-style: solid; border-width: 14px 7px 0 7px; border-color: #fff transparent transparent transparent; content: ""; }
.support .step-item .active:after { border-width: 0 7px 14px 7px; border-color: transparent transparent #fff transparent; }

.support .step-item .left-txt { display: inline-block; padding: 0 20px 0 28px; color: #56c4f2; font-size: 22px; letter-spacing: .1rem; }
.support .step-item .left-txt .num { font-size: 30px; }
.support .step-item .right-txt { font-size: 30px; }
.support .step-item dd { position: relative; padding: 28px 30px 0; }
.support .step-item dd .txt { line-height: 1.8; margin: 0 0 30px; font-size: 18px; }
.support .step-item dd .btm-txt { margin: 18px 0 0; color: #41b3e2; font-size: 18px; font-weight: bold; text-align: center; }

.support .step-item-04 .pic { width: 482px; margin: 0 0 0 48px; }
.support .step-item-04 .circle-list { position: absolute; top: 175px; right: 82px; width: 342px; }
.support .step-item-06 .circle-list { padding: 0 15px; }
.support .step-item .circle-item { width: 170px; height: 170px; line-height: 1.2; padding: 53px 0 0; border-radius: 50%; background: #35aadb; background: linear-gradient(#35aadb,#67c9f2); color: #fff; font-size: 27px; font-weight: bold; text-align: center; }
.support .step-item-07 .btm-txt { position: absolute; top: 178px; right: 30px; width: 250px; line-height: 1.4; }
.support .step-item-07 .btm-txt .num { line-height: 1; font-size: 100px; }
.support .step-item-07 .btm-txt .large-font { font-size: 30px; }
.support .step-item-07 .btm-txt .percent { font-size: 54px; }

/*==============================================================================
  faq style
============================================================================= */
.faq .bg { padding: 50px 0 0; background: #f8f8f8; }
.faq h2 { margin: 0 0 40px; font-size: 46px; text-align: center; }
.faq .item { width: 470px; padding: 0 0 55px; }
.faq dt { position: relative; display: table; height: 94px; padding: 7px 0; border-radius: 5px; background: linear-gradient(#0e6386 50%,#0d5377 50%); color: #fff; font-weight: bold; box-sizing: border-box; }
.faq dt:after { position: absolute; top: 0; bottom: 0; right: 40px; width: 0; height: 0; margin: auto 0; border-style: solid; border-width: 10px 5px 0 5px; border-color: #fff transparent transparent transparent; content: ""; }
.faq .active:after { border-width: 0 5px 10px 5px; border-color: transparent transparent #fff transparent; }

.faq dt .left-icon { display: table-cell; width: 56px; border-right: #000 solid 1px; font-size: 40px; font-weight: bold; text-align: center; box-sizing: border-box;vertical-align: middle; }
.faq dt .right-txt { display: table-cell; width: 414px; padding: 12px 18px; font-size: 18px; box-sizing: border-box; vertical-align: middle; }
.faq dd { padding: 16px 0 0; }
.faq dd .ans-ttl { display: table; box-sizing: border-box; font-weight: bold; }
.faq dd .left-icon { display: table-cell; width: 56px; color: #0e6386; font-size: 40px; font-weight: bold; text-align: center; box-sizing: border-box;vertical-align: middle; }
.faq dd .right-txt { display: table-cell; width: 414px; padding: 12px 18px; color: #0e6386; font-size: 20px; box-sizing: border-box; vertical-align: middle; }
.faq dd .detail-txt { margin: 10px 0 0; font-size: 16px; }

/*==============================================================================
  company
============================================================================= */
.company .bg { padding: 52px 0 70px;  background: #ddf1f8; }
.company h2 { margin: 0 0 48px; font-size: 46px; text-align: center; letter-spacing: .1rem; }
.company .pic  { position: absolute; top: 67px; right: -60px; }
.company table .left-txt { width: 170px; line-height: 1.4; padding: 27px 17px; background: #4dbdeb; border-bottom: #1182b1 solid 1px; border-right: #1182b1 solid 1px; color: #fff; font-size: 18px; font-weight: bold; text-align: right; vertical-align: middle; box-sizing: border-box; }
.company table .right-txt { width: 810px; line-height: 1.7; padding: 27px 17px; border-bottom: #1182b1 solid 1px; background: #fff; letter-spacing: .08rem; vertical-align: middle; box-sizing: border-box; }
.company table .border-none { border-bottom: none; }

/*==============================================================================
  footer style
============================================================================= */
footer .bg { padding: 26px 0; background: #000; }
footer p { color:  #fff; font-size: 12px; text-align: center; }