/*  #intro
================================================ */
#intro .inner { padding-top: 40px; padding-bottom: 46px; }

#intro .head { text-align: center; margin-bottom: 13px; }

#intro .head .copy { margin-bottom: 22px; }

#intro .head .copy:before { bottom: -22px; }

#intro .leadTxt { font-size: 1.6rem; text-align: center; font-weight: bold; line-height: 1.6; margin-bottom: 9px; }

#intro .leadTxt span { font-weight: bold; }

#intro .dataList { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 25px; }

#intro .dataList .item { width: 47.5%; margin-bottom: 23px; }

#intro .dataList .item .txt { color: #fff; font-weight: bold; text-align: center; position: relative; margin-bottom: 19px; padding: 3px; }

#intro .dataList .item .txt:before { content: ""; display: block; position: absolute; bottom: -6px; left: 50%; width: 0; height: 0; margin-left: -3px; border-style: solid; border-width: 6px 6px 0 6px; }

#intro .dataList .item01 .txt { background-color: #0e6a85; }

#intro .dataList .item01 .txt:before { border-color: #0e6a85 transparent transparent transparent; }

#intro .dataList .item02 .txt { background-color: #e2b069; }

#intro .dataList .item02 .txt:before { border-color: #e2b069 transparent transparent transparent; }

#intro .dataList .item03 { margin-bottom: 0; }

#intro .dataList .item03 .txt { background-color: #e86c83; }

#intro .dataList .item03 .txt:before { border-color: #e86c83 transparent transparent transparent; }

#intro .dataList .item04 { margin-bottom: 0; }

#intro .dataList .item04 .txt { background-color: #d22156; }

#intro .dataList .item04 .txt:before { border-color: #d22156 transparent transparent transparent; }

#intro .note { color: #808080; font-size: 1rem; margin-top: 14px; }

@media all and (min-width: 600px) { #intro .inner { padding-top: 82px; padding-bottom: 97px; }
  #intro .head { margin-bottom: 27px; }
  #intro .head .copy { margin-bottom: 30px; }
  #intro .head .copy:before { bottom: -29px; height: 24px; }
  #intro .leadTxt { font-size: 2.4rem; margin-bottom: 13px; }
  #intro .txt { text-align: center; }
  #intro .dataList { margin-top: 54px; }
  #intro .dataList .item { width: 23.5%; margin-bottom: 0; }
  #intro .dataList .item .txt { font-size: 1.6rem; padding: 9px; margin-bottom: 28px; }
  #intro .dataList .item .txt:before { border-width: 8px 8px 0 8px; margin-left: -8px; bottom: -8px; }
  #intro .dataList .item .img { width: 91%; margin: auto; }
  #intro .note { font-size: 1.3rem; margin-top: 16px; } }

/*  #relief
================================================ */
#relief .inner { padding-top: 50px; padding-bottom: 50px; }

#relief .reliefList { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 0 18px; }

#relief .reliefList .item { width: 48.5%; border: 3px solid #f591a3; background-color: #fff; padding: 17px 17px 13px; margin-bottom: 3%; box-sizing: border-box; }

#relief .reliefList .num { background-color: #520d22; color: #fff; font-size: 1rem; text-align: center; border-radius: 3px; margin: auto; width: 54px; }

#relief .reliefList .num span { display: inline-block; padding-left: 3px; }

#relief .reliefList .tit { font-weight: bold; text-align: center; font-size: 1.6rem; padding: 5px 0; line-height: 1.6; }

#relief .reliefList .tit span { font-weight: bold; }

#relief .reliefList .txt { font-size: 1.3rem; }

#relief .reliefSec { background-color: #fff; margin: 25px 18px 0; padding: 30px 18px; }

#relief .reliefSec + .reliefSec { margin-top: 22px; }

#relief .reliefSec .num { background-color: #520d22; color: #fff; font-size: 1rem; text-align: center; border-radius: 3px; margin: auto; width: 54px; }

#relief .reliefSec .num span { display: inline-block; padding-left: 3px; }

#relief .reliefSec .tit { font-size: 2.3rem; line-height: 1.7; color: #f591a3; text-align: center; margin-bottom: 15px; }

#relief .reliefSec .areaTxt { margin-top: 18px; }

#relief .reliefSec .copy { font-size: 2rem; margin-bottom: 8px; line-height: 1.6; }

#relief .reliefSec .trouble { margin-top: 22px; padding-bottom: 25px; position: relative; }

#relief .reliefSec .trouble:before { content: ''; display: block; position: absolute; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); bottom: 0; width: 0; height: 0; border-style: solid; border-width: 15px 25px 0 25px; border-color: #f591a3 transparent transparent transparent; }

#relief .reliefSec .trouble .sub { color: #fff; font-size: 1.5rem; text-align: center; background-color: #d8ceb9; padding: 8px; }

#relief .reliefSec .trouble .in { background-color: #faf8f5; padding: 15px 15px 20px; }

#relief .reliefSec .trouble .troubleList { background-color: #fff; position: relative; }

#relief .reliefSec .trouble .troubleList:before { content: ''; position: absolute; bottom: -20px; right: -10px; width: 90px; height: 125px; background: url(../img/service/bg_relief01.png) no-repeat center/contain; z-index: 1; }

@media (max-width: 374px) { #relief .reliefSec .trouble .troubleList:before { right: -40px; } }

#relief .reliefSec .trouble .troubleList > li { padding: 9px 48px 8px; border-bottom: 1px solid #d8ceb9; position: relative; }

#relief .reliefSec .trouble .troubleList > li:before { content: ""; display: block; background: url(../img/service/ico_relief01.svg) no-repeat; background-size: cover; position: absolute; left: 6%; top: 37%; width: 2rem; height: 1.5rem; }
/*#relief .reliefSec .trouble .troubleList > li:before, #relief .reliefSec .trouble .troubleList > li:after { content: ""; display: block; position: absolute; left: 18px; top: 50%; width: 15px; height: 2px; margin-top: -1px; background-color: #f591a3; }

#relief .reliefSec .trouble .troubleList > li:after { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }
*/
#relief .reliefSec .trouble .comment { background-color: #460b1d; color: #fff; position: relative; margin-top: 13px; padding: 10px 15px; font-size: 1.3rem; border-radius: 3px; z-index: 2; }

#relief .reliefSec .trouble .comment:before { content: ''; display: block; position: absolute; right: 15px; top: -8px; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 0; height: 0; border-style: solid; border-width: 0 10px 10px 10px; border-color: transparent transparent #460b1d transparent; }

#relief .reliefSec .message { margin-top: 7px; border: 2px solid #f591a3; padding: 12px 12px 18px; text-align: center; }

#relief .reliefSec .message .txt02 { padding: 9px; color: #f591a3; font-size: 1.6rem; background-color: #f3f2f2; margin-top: 10px; line-height: 1.5; }

#relief .reliefSec .areaBnr { text-align: center; margin-top: 16px; }

#relief .reliefSec .areaBnr .bnrTit { font-weight: 700; font-size: 1.3rem; text-align: center; vertical-align: baseline; position: relative; display: inline-block; position: relative; margin-bottom: 20px; }

#relief .reliefSec .areaBnr .bnrTit strong { font-size: 1.7rem; font-weight: 700; vertical-align: baseline; padding: 0 3px; }

#relief .reliefSec .areaBnr .bnrTit:before { content: ""; display: block; position: absolute; bottom: -17px; left: 0; width: 100%; height: 19px; background: url(../img/common/ico_border02.png) no-repeat center; background-size: 100%; }

#relief .reliefSec .areaBtn { margin-top: 22px; }

#relief .reliefSec .areaBtn .btn + .btn { margin-top: 20px; }

@media all and (min-width: 600px) { #relief .inner { padding-top: 100px; padding-bottom: 78px; }
  #relief .reliefList { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; padding: 0; }
  #relief .reliefList .item { width: 32%; padding: 30px 25px 24px; border-width: 5px; margin-left: 2%; margin-bottom: 2%; }
  #relief .reliefList .item:nth-child(3n+1) { margin-left: 0; }
  #relief .reliefList .num { width: 90px; padding: 3px 0; font-size: 1.4rem; }
  #relief .reliefList .num span { padding-left: 5px; }
  #relief .reliefList .tit { font-size: 2.6rem; padding: 7px 0 6px; }
  #relief .reliefList .txt { font-size: 1.5rem; }
  #relief .reliefSec { padding: 55px 50px 60px; margin: 20px 0; }
  #relief .reliefSec + .reliefSec { margin-top: 42px; }
  #relief .reliefSec .head { margin-bottom: 20px; }
  #relief .reliefSec .head .num { font-size: 1.4rem; padding: 3px 18px; border-radius: 2px; margin-bottom: 6px; }
  #relief .reliefSec .head .tit { font-size: 3.4rem; margin-bottom: 0; }
  #relief .reliefSec .set { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
  #relief .reliefSec .areaTxt { width: 47%; margin-top: -7px; }
  #relief .reliefSec .areaTxt .copy { font-size: 2.8rem; line-height: 1.5; margin-bottom: 16px; }
  #relief .reliefSec .img { width: 49%; }
  #relief .reliefSec .trouble { margin-top: 44px; padding-bottom: 50px; }
  #relief .reliefSec .trouble:before { border-width: 30px 50px 0 50px; }
  #relief .reliefSec .trouble .sub { font-size: 2.2rem; padding: 11px; }
  #relief .reliefSec .trouble .in { padding: 50px 50px 55px; }
  #relief .reliefSec .trouble .troubleList:before { width: 300px; height: 415px; bottom: -133px; right: -23px; }
  #relief .reliefSec .trouble .troubleList li { padding: 16px 200px 13px 84px; font-size: 1.8rem; }
  #relief .reliefSec .trouble .troubleList li:before { left: 35px; width: 24px; height: 19px; }
/*  #relief .reliefSec .trouble .troubleList li:before, #relief .reliefSec .trouble .troubleList li:after { left: 20px; width: 24px; }*/
  #relief .reliefSec .trouble .comment { margin-top: 23px; font-size: 1.5rem; width: 560px; padding: 14px 43px; box-sizing: border-box; border-radius: 5px; }
  #relief .reliefSec .trouble .comment:before { right: -12px; top: 50%; -webkit-transform: translate(0, -50%) rotate(90deg); -ms-transform: translate(0, -50%) rotate(90deg); transform: translate(0, -50%) rotate(90deg); }
  #relief .reliefSec .message { padding: 34px 50px 38px; margin-top: 14px; }
  #relief .reliefSec .message .txt02 { margin-top: 15px; padding: 15px; font-size: 2rem; }
  #relief .reliefSec .areaBnr { margin-top: 34px; }
  #relief .reliefSec .areaBnr .bnrTit { font-size: 2rem; margin-bottom: 30px; }
  #relief .reliefSec .areaBnr .bnrTit:before { height: 20px; }
  #relief .reliefSec .areaBnr .bnrTit strong { font-size: 3rem; }
  #relief .reliefSec .areaBnr .bnr { margin-right: auto; margin-left: auto; width: 780px; }
  #relief .reliefSec .areaBtn { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 40px; margin-bottom: 10px; }
  #relief .reliefSec .areaBtn .btn { width: 49%; }
  #relief .reliefSec .areaBtn .btn + .btn { margin-top: 0; } }

/*  #reason
================================================ */
#reason .inner { padding-top: 50px; padding-bottom: 50px; }

#reason .copy { color: #fff; font-size: 1.6rem; text-align: center; background-color: #d8ceb9; padding: 5px; margin-bottom: 20px; line-height: 2; letter-spacing: .2em; }

#reason .list .item { background-color: #efe9dd; padding: 28px 18px; position: relative; }

#reason .list .item + .item { margin-top: 20px; }

#reason .list .item:nth-child(2) .tit { background-image: url(../img/service/ico_reason02.png); }

#reason .list .item:nth-child(3) .tit { background-image: url(../img/service/ico_reason03.png); }

#reason .list .num { position: absolute; top: 0; left: 0; width: 20px; height: 20px; font-size: 1rem; color: #fff; font-weight: bold; background-color: #460b1d; text-align: center; }

#reason .list .tit { font-weight: bold; font-size: 1.6rem; padding: 18px 0 18px 75px; margin-bottom: 15px; background: url(../img/service/ico_reason01.png) no-repeat left center/64px; }

@media all and (min-width: 600px) { #reason .inner { padding-top: 102px; padding-bottom: 100px; }
  #reason .copy { font-size: 2rem; padding: 11px; margin-bottom: 40px; }
  #reason .list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #reason .list .item { width: 32%; box-sizing: border-box; padding: 30px 30px 23px; }
  #reason .list .item + .item { margin-top: 0; }
  #reason .list .num { font-size: 1.4rem; width: 30px; height: 30px; }
  #reason .list .tit { padding: 118px 0 0 0; text-align: center; background: url(../img/service/ico_reason01.png) no-repeat center top/100px; font-size: 2rem; margin-bottom: 4px; } }

/*  #route
================================================ */
#route .inner { padding-top: 50px; padding-bottom: 30px; }

#route .compare { padding: 0 18px; }

#route .box { border: 2px solid #0e6a85; background-color: #fff; text-align: center; margin-bottom: 20px; }

#route .box .subTit { background-color: #0e6a85; color: #fff; text-align: center; padding: 7px 0; font-size: 1.5rem; position: relative; }

#route .box img { width: 155px; margin-right: 10px; }

#route .box .in { padding: 21px 15px; }

#route .box .txt { background-color: #edebeb; text-align: center; padding: 10px; margin-top: 15px; font-size: 1.3rem; line-height: 1.6; }

#route .box.embellir { border-color: #f591a3; }

#route .box.embellir .subTit { background-color: #f591a3; }

#route .box.embellir .txt { color: #f591a3; }

@media all and (max-width: 599px) { #route .box.embellir img { width: 188px; margin-right: -24px; }
  #route .box.embellir .txt { color: #f591a3; margin-top: 20px; padding: 13px; } }

@media all and (min-width: 600px) { #route .inner { padding-top: 100px; padding-bottom: 100px; }
  #route .compare { padding: 10px 0 0; }
  #route .box { max-width:1100px; margin:0 auto 40px; }
  #route .box .subTit { font-size: 2.2rem; padding: 11px 0; }
  #route .box .in { padding: 50px; }
  #route .box img { width: auto; }
  #route .box .txt { font-size: 1.6rem; padding: 18px; margin-top: 40px; }
  #route .box.embellir { margin-bottom: 0; }
  #route .box.embellir .txt { font-size: 2rem; padding: 15px; } }
/*  #guide
================================================ */
#method .inner { padding-top: 42px; padding-bottom: 50px; }

#method .intro { text-align: center; margin-bottom: 25px; }

#method .leadTxt { font-size: 1.6rem; font-weight: bold; line-height: 1.6; }

#method .leadTxt span { font-weight: bold; }

#method .flow { padding: 18px; }

#method .flow + .flow { margin-top: 30px; }

#method .content { background-color: #fff; padding: 22px 18px 26px; }

#method .content .tit { text-align: center; font-size: 1.8rem; letter-spacing: 0.1em; }

#method .list { margin-top: 52px; }

#method .item { position: relative; }

#method .item + .item { margin-top: 61px; }

#method .item .num { position: absolute; text-align: center; left: 10px; top: -22px; font-size: 1.1rem; line-height: 1.3; color: #fff; z-index: 2; width: 75px; }

#method .item .num:before { content: ""; display: block; position: absolute; top: 50%; left: 0; margin-top: -41px; border-radius: 50%; width: 75px; height: 75px; background: #baa984; z-index: -1; }

#method .item .num span { display: block; font-size: 2.4em; text-align: center; position: relative; }

#method .item .img { margin-bottom: 13px; }

@media all and (min-width: 600px) { #method .inner { padding-top: 83px; padding-bottom: 100px; }
  #method .intro { margin-bottom: 52px; }
  #method .intro .copy:before { background: url(../img/how/ico_border01.png) no-repeat center; bottom: -26px; }
  #method .intro .subTit { letter-spacing: .05em; }
  #method .leadTxt { font-size: 2.5rem; letter-spacing: .01em; }
  #method .flow { padding: 47px 50px 52px; }
  #method .flow + .flow { margin-top: 40px; }
  #method .content { padding: 47px 50px 60px; }
  #method .content .tit { font-size: 2.7rem; margin-left: 14px; }
  #method .list { margin-top: 26px; }
  #method .item { position: relative; }
  #method .item:before { content: ""; display: block; position: absolute; bottom: -44px; left: 40px; width: 1px; height: 100%; background: #baa984; }
  #method .item:last-child:before { display: none; }
  #method .item + .item { margin-top: 30px; }
  #method .item .num { left: 2px; top: 20px; font-size: 1.2rem; line-height: 1.3; color: #fff; width: 80px; }
  #method .item .num:before { margin-top: -43px; width: 80px; height: 80px; }
  #method .item .num span { font-size: 2.6rem; }
  #method .item .box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-left: 102px; }
  #method .item .img { width: 272px; margin-bottom: 0; }
  #method .item .txt { width: 420px; } }
