@charset "utf-8";
.linkBtn a{
  display:table;
  margin:0 auto;
  background-color:#2b7af2;
  border:1px solid #2b7af2;
  color:#fff;
  text-align:center;
  line-height:1.0;
}
.linkBtn a:hover{
  background-color:#fff;
  color:#2B7AF2;
}
#topMV picture,
#topMV picture img{
  width:100%;
  height:100vh;
  height:100svh;
  object-fit:cover;
  object-position:center center;
}
#topLead{text-align:center;}
#topLead h2{line-height:1.25;}
#topLead p{line-height:1.44;}
#topLead .pdfLink{margin:0 auto;}
#catLists{
  width:100%;
  background-color:#262626;
}
#catLists .catList{
  margin:0 auto;
  padding-left:0;
}
#catLists .catList li{
  display:block;
  background-color:#fff;
  text-align:center;
}
#catLists .catList li a{display:block;}
#catLists .catList li span[data-anime]{
  display:block;
  line-height:1.0;
  white-space:nowrap;
}
section[data-type="topSec"]{text-align:center;}
section[data-type="topSec"] h2{
  display:block;
  line-height:1.0;
}
section[data-type="topSec"] p{
  display:block;
  line-height:1.44;
}
#service{
  background-color:#262626;
  color:#fff;
}
#flow{}
#flow .stepList{padding:0;}
#flow .stepList li{
  display:block;
  position:relative;
  list-style:none;
  color:#fff;
}
#flow .stepList li .stepBox{position:relative;}
#flow .stepList h3,
#flow .stepList h4{
  display:block;
  line-height:1.0;
  text-align:center;
  font-weight:normal;
}
#flow .stepList p{
  display:block;
  line-height:1.444;
  text-align:left;
}
#flow .stepList img{
  display:block;
  margin:0 auto;
}
#flow .listCaution{
  display:block;
  margin:0 auto;
  text-align:left;
}
@media (max-width:767.98px){
  .linkBtn a{
    width:100%;
    padding:11px 10px;
    border-radius:19px;
    font-size:15px;
  }
  #topLead{padding:74px 1vw;}
  #topLead h2{font-size:20px;}
  #topLead p{
    margin-top:20px;
    font-size:12px;
  }
  #topLead .pdfLink{
    max-width:310px;
    margin-top:20px;
  }
  #catLists{padding:64px 0;}
  #catLists .catList li{
    width:100%;
    max-width:278px;
    margin:0 auto;
  }
  #catLists .catList li+li{margin-top:24px;}
  #catLists .catList li a{padding-top:16px;}
  #catLists .catList li img{
    width:70%;
    margin:0 auto;
  }
  #catLists .catList li span[data-anime]{padding:28px 1% 22px;}
  #catLists .linkBtn{margin-top:50px;}
  #catLists .linkBtn a{max-width:278px;}
  section[data-type="topSec"]{padding:50px 10vw;}
  section[data-type="topSec"] h2{font-size:28px;}
  section[data-type="topSec"] p{
    margin-top:26px;
    font-size:15px;
    text-align:left;
  }
  section[data-type="topSec"] figure{margin-top:24px;}
  section[data-type="topSec"] .linkSquare{margin-top:34px;}
  section[data-type="topSec"] .linkSquare a{
    min-width:250px;
    padding:16px 10px;
    font-size:13px;
  }
  #flow .stepList{
    width:100%;
    margin-top:24px;
  }
  #flow .stepList li{position:relative;}
  #flow .stepList li+li{margin-top:-1px;}
  #flow .stepList li:not(:nth-child(1)){padding:96px 8% 50px;}
  #flow .stepList li:nth-child(1){
    padding:56px 8% 50px;
    background-color:#001d47;
  }
  #flow .stepList li:nth-child(2){background-color:#002b5a;}
  #flow .stepList li:nth-child(3){background-color:#00396d;}
  #flow .stepList li:nth-child(4){background-color:#004a87;}
  #flow .stepList li:nth-child(5){background-color:#005da1;}
  
  #flow .stepList li:before{
    content:"";
    display:block;
    position:absolute;
    top:0;
    left:calc(50% - 34px);
    width:0;
    height:0;
    border-style:solid;
    border-right:34px solid transparent;
    border-left:34px solid transparent;
    border-top:46px solid;
    border-bottom: 0;
  }
  #flow .stepList li:nth-child(1):before{content:none;}
  #flow .stepList li:nth-child(2):before{border-top-color:#001d47;}
  #flow .stepList li:nth-child(3):before{border-top-color:#002b5a;}
  #flow .stepList li:nth-child(4):before{border-top-color:#00396d;}
  #flow .stepList li:nth-child(5):before{border-top-color:#004a87;}
  #flow .stepList h3{font-size:22px;}
  #flow .stepList h4{
    margin-top:22px;
    font-size:18px;
  }
  #flow .stepList p{
    display:table;
    margin:12px auto 0;
    font-size:13px;
  }
  #flow .stepList img{
    width:30px;
    margin-top:30px;
  }
  #flow .listCaution{
    margin-top:16px;
    font-size:15px;
    line-height:1.4;
  }
  #flow .linkBtn{margin-top:48px;}
}
@media (min-width:768px){
  #catLists .catList{
    display:flex;
    max-width:1672px;
    width:96vw;
  }
  #flow .stepList{
    display:flex;
    justify-content:space-between;
  }
  #flow .stepList li{
    width:20%;
    display:flex;
    flex-direction:column;
  }
  #flow .stepList h3{color:#2e2e2e;}
  #flow .stepList li .stepBox{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
  }
  #flow .stepList li:nth-child(1) .stepBox{background-color:#001d47;}
  #flow .stepList li:nth-child(2) .stepBox{background-color:#002b5a;}
  #flow .stepList li:nth-child(3) .stepBox{background-color:#00396d;}
  #flow .stepList li:nth-child(4) .stepBox{background-color:#004a87;}
  #flow .stepList li:nth-child(5) .stepBox{background-color:#005da1;}
  #flow .stepList li .stepBox:before{
    content:"";
    display:block;
    position:absolute;
    left:0;
    top:50%;
    width:0;
    height:0;
    border-style:solid;
    border-top:solid transparent;
    border-bottom:solid transparent;
    border-left:solid;
    border-right:0;
  }
  #flow .stepList li:nth-child(1) .stepBox:before{content:none;}
  #flow .stepList li:nth-child(2) .stepBox:before{border-left-color:#001d47;}
  #flow .stepList li:nth-child(3) .stepBox:before{border-left-color:#002b5a;}
  #flow .stepList li:nth-child(4) .stepBox:before{border-left-color:#00396d;}
  #flow .stepList li:nth-child(5) .stepBox:before{border-left-color:#004a87;}
  #flow .stepList li .stepBox > *{position:relative;}
  #flow .stepList h4{line-height:1.2;}
  #flow .stepList p{flex-grow:1;}
}
@media (min-width:768px) and (max-width:1279.98px){
  .linkBtn a{
    min-width:65.7813vw;
    padding:1.4063vw;
    border-radius:3.9063vw;
    font-size:1.4063vw;
  }
  #topLead{padding:21.0938vw 1vw 13.125vw;}
  #topLead h2{font-size:4.6875vw;}
  #topLead p{
    margin-top:3.125vw;
    font-size:1.5625vw;
  }
  #topLead .pdfLink{margin-top:2.5vw;}
  #catLists{padding:11.7188vw 0 11.4063vw;}
  #catLists .catList{
    flex-wrap:wrap;
    justify-content:center;
  }
  #catLists .catList li{width:31%;}
  #catLists .catList li:nth-child(2),
  #catLists .catList li:nth-child(3),
  #catLists .catList li:nth-child(5){margin-left:3.5%;}
  #catLists .catList li:nth-child(n+4){margin-top:2vw;}
  #catLists .catList li span[data-anime]{padding:2.5vw 1% 1.9531vw;}
  #catLists .linkBtn{margin-top:7.8125vw;}
  section[data-type="topSec"]{padding:11.7188vw 2vw;}
  section[data-type="topSec"] h2{font-size:2.3438vw;}
  section[data-type="topSec"] p{
    margin-top:4.2188vw;
    font-size:1.4063vw;
  }
  section[data-type="topSec"] figure{margin-top:2.8125vw;}
  section[data-type="topSec"] .linkSquare{margin-top:2.3438vw;}
  section[data-type="topSec"] .linkSquare a{
    min-width:21.875vw;
    padding:1.4063vw;
    font-size:1.4063vw;
  }
  #flow .stepList h3{
    margin-bottom:3.4375vw;
    font-size:1.7188vw;
  }
  #flow .stepList li .stepBox{
    height:calc(100% - 84px);
    padding:10.625vw 1.0938vw;
  }
  #flow .stepList li .stepBox:before{
    /*top:calc(50% - 6.25vw);*/
    border-top-width:6.25vw;
    border-bottom-width:6.25vw;
    border-left-width:5.0vw;
  }
  #flow .stepList h4{font-size:1.5625vw;}
  #flow .stepList p{font-size:1.25vw;}
  #flow .stepList img{
    width:5.8594vw;
    margin-top:5.4688vw;
  }
  #flow .listCaution{font-size:1.25vw;}
  #flow .linkBtn{margin-top:8.5938vw;}
}
@media (min-width:768px) and (max-width:1689.98px){
  #catLists .catList{font-size:1.19617vw;}
}
@media (min-width:1280px){
  .linkBtn a{
    min-width:842px;
    padding:18px;
    border-radius:50px;
    font-size:calc(18 / var(--root-font-size) * 1rem);
  }
  #topLead{padding:270px 1vw 168px;}
  #topLead h2{font-size:calc(60 / var(--root-font-size) * 1rem);}
  #topLead p{
    margin-top:40px;
    font-size:calc(20 / var(--root-font-size) * 1rem);
  }
  #topLead .pdfLink{margin-top:32px;}
  #catLists{padding:150px 0 146px;}
  #catLists .catList{justify-content:space-between;}
  #catLists .catList li{width:18.181%;}
  #catLists .catList li span[data-anime]{padding:32px 1% 25px;}
  #catLists .linkBtn{margin-top:100px;}
  section[data-type="topSec"]{padding:150px calc(50% - 640px);}
  section[data-type="topSec"] h2{font-size:calc(30 / var(--root-font-size) * 1rem);}
  section[data-type="topSec"] p{
    margin-top:54px;
    font-size:calc(18 / var(--root-font-size) * 1rem);
  }
  section[data-type="topSec"] figure{margin-top:36px;}
  section[data-type="topSec"] .linkSquare{margin-top:30px;}
  section[data-type="topSec"] .linkSquare a{
    min-width:280px;
    padding:18px;
    font-size:calc(18 / var(--root-font-size) * 1rem);
  }
  #flow .stepList h3{
    margin-bottom:44px;
    font-size:calc(22 / var(--root-font-size) * 1rem);
  }
  #flow .stepList li .stepBox{
    height:calc(100% - 84px);
    padding:136px 14px;
  }
  #flow .stepList li .stepBox:before{
   /* top:calc(50% - 80px);*/
    border-top-width:80px;
    border-bottom-width:80px;
    border-left-width:64px;
  }
  #flow .stepList h4{font-size:calc(20 / var(--root-font-size) * 1rem);}
  #flow .stepList p{font-size:calc(16 / var(--root-font-size) * 1rem);}
  #flow .stepList img{
    width:75px;
    margin-top:70px;
  }
  #flow .listCaution{font-size:calc(16 / var(--root-font-size) * 1rem);}
  #flow .linkBtn{margin-top:110px;}
}
@media (min-width:1280px) and (max-width:1689.98px){
}
@media (min-width:1690px){
  #catLists .catList{font-size:calc(20 / var(--root-font-size) * 1rem);}
}

