div,p,h3,span{
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", ryo-display-plusn,sans-serif;
}

.fv{
    background-color: #00A1DF;
}

.nami01{
    top: 0;
    height: 100%;
}

.nami01 img{
    height: 100%;
}

.fvbox{
    padding: 60px 0 0;
}

.fvbox h1{
    color: #fff;
    letter-spacing: .36rem;
    text-align: left;
}

.h1_subtxt {
    font-size: 20px;
    letter-spacing: .1rem;
}

.main-image {
    min-width: 518px;
}

.wrapper{
    align-items: center;
}

.cta_btn_box_top a.cta01 .btnr{
    background-color: #fff;
}

.cta_btn_box_top a.cta02 .btnr{
    background-color: #F8CD85;
}

.cta_btn_box_top{
    justify-content: space-between;
}

.slide img{
    padding: 20px;

}

.slides{
    background-color: #fff;
}

.slides {
    display: flex;
    width: 135%;
    margin-top: 70px;
    animation: slide var(--duration, 52s) linear infinite;
  }

.slider{
width: 135%;
}

.sec01{
    background-color: #D1ECF7;
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    padding: 0 20px 300px;
    position: relative;
    z-index: 1;
}

.h2-title {
    max-width: 27rem;
    display: flex;
    margin: 0 auto;
    font-size: 2.625rem;
    font-weight: 600;
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
}

.h2-title img{
    max-width: 292px;
}

.sec01 .wrapper{
    flex-direction: column;
    margin-top: 20px;
}

.text-01{
    font-weight: 600;
}

.text-01 {
    font-weight: 600;
    font-size: 1.8rem;
}

.flex{
    flex-direction: row;
    margin-top: 10px;
    align-items: center;
    justify-content: space-between;
}

.flex .flex-img,
.flex .text-01{
    width: 48%;
}

.sec02 .h2-title{
    max-width: 50rem;
}

.sec02 {
    margin-top: -8rem;
    padding-bottom: 15rem;
}

.sec02 .flex{
    flex-wrap: wrap;
}

.h3-title {
    display: flex;
    align-items: flex-end;
}

.h3-num span{
    font-family:"Noto Sans","Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    color: #fff;
    display: flex;
    background-color: #01A1DF;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    letter-spacing: 0;
    font-size: 2.125rem;
    font-weight: 600;
}

.h3-txt {
    margin-left: 1rem;
    font-size: 1.75rem;
}

.h3-txt span,
.item-bottom{
    font-size: 1.3rem;
}

.h3-txt p{
    font-weight: 600;
}

.item {
    width: 48%;
    /*background-color: #d2ecf7;
    padding: 1em 2em 3em;
    border-radius: 12px;*/
}
.greybox {
    background-color: #f7f7f7;
    padding: 1em 2em 3em;
    border-radius: 12px;
}
.item-img {
    text-align: center;
}

.mt2rem{
    margin-top: 2rem;
}

.item-bottom.mt1rem{
    margin-top: .4rem;
}

.sec03 {
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 100px;
}

.sec03:before{
    clip-path: polygon(0 3%, 100% 380px, 100% 100%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #D1ECF7;
    z-index: -1;  /* 背景として裏に */
}

.sec03 .h2-title{
    max-width: 41.25rem;
}

.h2-title .img1{
    max-width: 380px;
    margin-top: -23px;
}

.h2-title .img2{
    max-width: 165px;
}

.sec03 .inner {
    background-color: #fff;
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 15px;
    padding: 2em 3em 2em 4em;
    display: flex;
    align-items: center;

}

.inner-left {
    font-weight: 600;
    font-size: 20px;
    width: 50%;
    line-height: 1.8;
}

.inner-right{
    width: 50%;
}

.sec03 .wrapper{
    margin-top: 140px;
}

.sec03 .wrapper .h2-title{
    max-width: 728px;
    display: block;
    text-align: center;
}

.sec03 .wrapper .h2-title img {
    max-width: 435px;
    margin-right: 13px;
}

.sec03 .wrapper-table {
    max-width: 1200px;
    margin: -145px auto 0;
}

.sec04 {
    background:none;
    z-index: 0;
    position: relative;
    margin-top: -2em;
}

.sec04:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 79%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}


.sec04 .wrapper{
    flex-direction: column;
    padding-top: 100px;
}

.sec04 .flex{
    flex-wrap: wrap;
    margin-bottom: 60px;
    align-items: flex-start;
}

.sec04 .h3-title{
    font-weight: 600;
}

.sec04 .item{
    width: 30%;
    background-color: #fff;
    border-radius: 12px;
    text-align: center;
    margin-top: 55px;
}

.sec04 .item-head span{
    background-color: #F5F481;
    display: flex;
    width: 2.7rem;
    height: 2.7rem;
    margin: -40px auto 0;
    justify-content: center;
    font-weight: bold;
    align-items: center;
    border-radius: 50%;
    font-size: 1.2rem;
    font-family: "Noto Sans", "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
}

.sec04 .item-title{
    font-weight: 600;
}

.sec04 .item-img{
    padding: 30px;
    width: 12.3rem;
    margin: 0 auto;
}

.sec04 .item-img.w16rem{
    width: 16rem;
}

.sec04 .item-img.w9rem{
    width: 9rem;
    padding: 0 20px 30px;
}


.sec04 .lineup{
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

.sec04 .lineup-block{
    width: 90%;
    margin: 60px 0 160px;
}

.sec04 .lineup-left{
    background-color: #F5F481;
    padding: .5rem 0 1rem;
    width: 20%;
    text-align: center;
    clip-path: polygon(
    0 0, 100% 0,
    100% 85%,  /* 下の左右を少し上げて */
    50% 100%,  /* 真ん中を下に尖らせる */
    0 85%
  );
}

.sec04 .lineup-left .lineup-num{
    color: #fff;
    background-color: #D02D31;
    width: 1.8rem;
    height: 1.8rem;
    justify-content: center;
    align-items: center;
    display: flex;
    margin: 0 auto;
    border-radius: 50%;
    font-weight: 600;
}

.sec04 .lineup-right {
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: 0 20px;
    width: 75%;
    box-shadow: 8px 7px 19px -3px #999;
}

.sec04 .lineup-right p{
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Meiryo", sans-serif;
    font-weight: 500;
}

.sec04 .lineup-title{
    font-size: 1.2rem;
    margin: 0.5rem 0 0;
    font-weight: 600;
}

.sec05 {
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 24rem;
}

.sec05:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}

.sec05 .h2-title{
    display: block;
    max-width: 51.5625rem;
    padding-top: 6rem;
    margin: 0;
}

.sec05 .h2-title img{
    margin: 0px 10px 0 0;
}

.sec05 .wrapper{
    display: block;
}

.sec05 .flex{
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: 40px;
}

.sec05 .item{
    background-color: #fff;
    border-radius: 12px;
    padding: 20px 20px 30px;
    margin-bottom: 60px;
}

.sec05 .item:nth-child(3){
    padding-bottom: 54px;
}


.sec05 .h3-title .num{
    background-color: #00a2df;
    display: flex;
    color: #fff;
    width: 4rem;
    height: 4rem;
    justify-content: center;
    padding-bottom: 2px;
    padding-left: 2px;
    font-weight: bold;
    margin-right: 10px;
    align-items: center;
    border-radius: 50%;
    font-size: 2rem;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Meiryo", sans-serif;
}

.sec05 .title-area{
    line-height: 1.2;
}

.sec05 .title-area span{
    font-size: 1.125rem;
}

.sec05 .title-area p{
    font-weight: bold;
}

.sec05 .item-img {
    max-width: 22rem;
    margin: 0 auto;
}

/* sec06 */

.sec06 .wrapper{
    display: block;
}

.sec06 .flex{
    margin-top: 50px;
}

.sec06 .h2-title{
    max-width: 40rem;
    display: block;
    text-align: center;
}

.sec06 .h2-title img{
    margin-right: 10px;
}

.sec06 .item{
    background-color: #FFD5D6;
    width: 15%;
    height: 130px;
    padding: 20px 19px 20px 0;
    clip-path: polygon(
        0 0,       /* 左上 */
        90% 0,     /* 右上より少し内側 */
        100% 50%,  /* 右端の尖った部分（中央） */
        90% 100%,  /* 右下より少し内側 */
        0 100% 
      );
}

.sec06 .item-txt{
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    margin: 1.5rem 0 0;
    line-height: 1.3;
}

.sec06 .item-num{
    color: #fff;
    background-color: #D02D31;
    width: 27px;
    height: 27px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    border-radius: 50%;
    font-weight: bold;
}

.sec06 .item:nth-child(5) .item-txt{
    margin:1rem 0 0;
}

.step-flow {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 60px;
  }
  
  .row {
    display: flex;
    justify-content: left;
    position: relative;
    align-items: center;
  }
  
  .step {
    width: 238px;
    height: 238px;
    border: 1px solid #c33;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    text-align: center;
    position: relative;
    background: white;
    font-size: 2rem;
  }

  .line {
    width: 60px;
    height: 1px;
    background-color: #D02D31;
    display: flex;
}
  
  .step .number {
    background: #c33;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 24px;
    font-size: 1.5rem;
    margin-bottom: 5px;
    top: -19px;
    position: absolute;
  }
  
  .step.active {
    background: #fcc;
  }
  
  .step.empty {
    border: none;
    background: transparent;
  }
  
  .row.lower {
    margin-top: 60px;
  }
  
  /* 線を引くSVG */
  .connector {
    position: absolute;
    top: 0;
    left: 0;
    width: 800px;
    height: 200px;
    pointer-events: none;
  }

  .sec06 {
    padding: 0 0 6rem;
}

  .sec07 .h2-title {
    display: block;
    max-width: 60rem;
    text-align: center;
}

.sec07 {
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 24rem;
}

.sec07:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}

.sec07 .h2-title img{
    margin-right: 10px;
}

.sec07 .wrapper{
    display: block;
    padding-top: 5rem;
}

.sec07 .item_01 {
    background: url(../images/img-bg-01.png);
}

.sec07 .item_02 {
    background: url(../images/img-bg-02.png);
}

.sec07 .item_03 {
    background: url(../images/img-bg-03.png);
}

.sec07 .item_04 {
    background: url(../images/img-bg-04.png);
}

.sec07 .item_05 {
    background: url(../images/img-bg-05.png);
}

.sec07 .item_06 {
    background: url(../images/img-bg-06.png);
}

.sec07 .item_07 {
    background: url(../images/img-bg-07.png);
}

.sec07 .item_08 {
    background: url(../images/img-bg-08.png);
}

.sec07 .item_09 {
    background: url(../images/img-bg-09.png);
}

.sec07 .item{
    padding: 0 25px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    width: 30%;
    height: 371px;
    margin-top: 4em;
}

.sec07 .wrapper .flex{
    flex-wrap: wrap;
    align-items: flex-start;
}

.sec07 .item-head {
    text-align: center;
}

.sec07 .item-head span{
    width: 4rem;
    height: 4rem;
    background-color: #006D8E;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Meiryo", sans-serif;
    margin: -28px auto 0;
    font-size: 1.6rem;
}

.sec07 .item-head .title{
    font-weight: bold;
    font-size: 1.5rem;
}

.sec08 .wrapper{
    display: block;
}

.sec08 .h2-title{
    display: block;
    max-width: 58rem;
    text-align: center;
}

.sec09 .wrapper{
    display: block;
}

.sec09 .h2-title{
    display: block;
    max-width: 48rem;
    text-align: center;
}

.sec09 .flex{
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: 5rem;
}

.sec09 .item{
    border-radius: 19px;
    border: 4px solid #CDCDCD;
    margin-bottom: 50px;

}

.sec09 .item-bottom{
    padding: 1.5rem 2rem;
    height: 24vw;
    margin-bottom: 50px;
}

.sec09 .item-title{
    margin: 0;
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.4;
}

.sec09 .item-text {
    font-size: 1.3rem;
    margin-top: 25px;
}

.sec10 .wrapper{
    display: block;
}

.sec10 {
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 24rem;
    margin-top: 6rem;
}

.sec10:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}

.sec10 .h2-title{
    max-width: 48rem;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    justify-content: center;
}

.sec10 .h2-title span{
    font-size: 1.25rem;
    margin-top: 1.25rem;
}

.sec10 .h2-title img {
    max-width: 9.36vw;
}

.sec10 .inner {
    background-color: #fff;
    max-width: 1200px;
    border-radius: 15px;
    padding: 4rem;
}

.sec10 .txt-box {
    font-weight: bold;
    font-size: 1.5rem;
}

.sec10 .inner-wrap {
    display: flex;
    justify-content: space-between;
}

.sec10 .inner-wrap-left {
    width: 55%;
}

.sec10 .inner-wrap-right {
    width: 40%;
}

.row-reverse{
    flex-direction: row-reverse;
}

.sec10 .inner-img {
    margin: 2rem auto;
    max-width: 29vw;
}

.sec11 {
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 24rem;
    margin-top: 6rem;
}

.sec11:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}

.sec11 .wrapper{
    display: block;
}

.sec11 .h2-title{
    display: block;
    max-width: 52rem;
    text-align: center;
    margin-top: 5rem;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    padding-top: 8rem;
}

.sec11 .h2-title img{
    margin-right: 10px;
}

.sec11 .flex{
    flex-wrap: wrap;
    margin-top: 4rem;
    align-items: flex-start;
}

.sec11 .item{
    border-radius: 15px;
    position: relative;
    background-color: #fff;
    margin-bottom: 3rem;
}

.sec11 .item-head{
    background-color: #E3E9F5;
    text-align: center;
    border-radius: 15px 15px 0 0;
}

.sec11 .item-head-tag{
    background-color: #1C4CB1;
    color: #fff;
    border-radius: 7px;
    margin: 0 auto ; 
    max-width: 480px;
    font-size: 1.375rem;
    padding: .3rem 2rem;
    position: absolute;
    top: -1rem;
    left: 6rem;
}

.sec11 .h3-title{
    justify-content: center;
    padding: 2rem 0 1rem;
    margin: 0;
    font-weight: bold;
    font-size: 1.75rem;
}

.sec11 .item-img {
    width: 80%;
    margin: 0 auto;
    max-width: 500px;
}

.sec11 .item-bottom{
    padding: 2rem 3rem;
}

.mt1rem{
    margin-top: 1rem;
}

.mb415rem{
    margin-bottom: 4.15rem;
}

.sec12 .h2-title{
    display: block;
    max-width: 52rem;
    text-align: center;
    margin-top: 5rem;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    padding-top: 8rem;
}

.sec12 .h2-title img{
    margin-right: 10px;
}

.sec12 .wrapper{
    display: block;
    margin-bottom: 15rem;
}

.sec12 .wrap {
    border-radius: 12px;
    box-shadow: 0px 2px 17px #EAEAEA;
    padding: 3rem;
    margin-top: 3rem;
}

.sec12 .h3-title{
    margin: 0;
    font-weight: bold;
    font-size: 2rem;
}

.sec12 .h4-title{
    background-color: #01A1DF;
    color: #fff;
    max-width: 325px;
    font-size: 1.125rem;
    width: auto;
    padding: .5rem;
    text-align: center;
    font-weight: bold;
}

.sec12 .flex{
    margin-top: 20px;
    justify-content: space-between;
}

.sec12 ul{
    margin-bottom: .5rem;
}

.sec12 li.title{
    color: #01A1DF;
    font-weight: 600;
    margin-bottom: .5rem;
}

.sec12 .flex-right {
    width: 45%;
    background-color: #CBCBCB;
    height: 15vw;
    border-radius: 12px;
}

.sec12 .flex-left{
    width: 45%;
}

.newinde_cta {
    content: "";
    background-position: center center;
    background: url(../images/newindeximg/cta_back02.png) no-repeat;
    background-size: 100% 100%;
}

.cta_inner h2{
    color: #fff;
}

.cta_btn_box a div.btnr{
    background-color: #FFEE26;
}

.sec13 .wrapper{
    display: block;
}

.sec13 .h2-title{
    display: block;
    max-width: 52rem;
    text-align: center;
    margin-top: 5rem;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    padding-top: 8rem;
}

.sec13 .h2-title img{
    margin-right: 10px;
}

.sec13 .flex{
    align-items: flex-start;
    margin-top: 4rem;
}

.sec13 .item-head {
    background-color: #81D0EF;
    border-radius: 15px 15px 0 0;
    padding: 1rem 0;
}

.sec13 .item-head span{
    color: #fff;
    font-weight: bold;
    background-color: #01A1DF;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.3rem;
    margin: 0 auto;
}

.sec13 .h3-title{
    justify-content: center;
    font-weight: bold;
    font-size: 1.3rem;
    text-align: center;
    margin: 0;
}

.sec13 .item{
    width: 24%;
    box-shadow: 0px 0px 18px #EAEAEA ;
    border-radius: 0 0 15px 15px;
}

.sec13 .item-bottom {
    padding: 1rem;
    height: 530px;
    background-color: #fff;
    border-radius: 0 0 15px 15px;
}

.sec13 .item-img {
    max-width: 160px;
    margin: 15px auto;
}

.sec13 .item-text {
    font-size: 1rem;
}
.sec13 .item-text p {
    font-size: 1.2rem;
}
.mt3-4rem{
    margin-top: 3.4rem;
}

.qestion-block-wrapper {
    margin-top: 4rem;
}

.question-block {
    background-color: #F7F7F7;
    border-radius: 21px;
    margin-bottom: 2rem;
    padding: 3rem;
}
.question-q {
    display: flex;
    font-weight: bold;
    font-size: 1.5rem;
    align-items: center;
}

.question-q span{
    font-size: 2rem;
    color: #004774;
    font-weight: bold;
}

.question-a {
    background-color: #fff;
    padding: 1rem 2rem;
    border-radius: 14px;
    margin-top: 1rem;
    line-height: 1.8;
}
.question-a p {
    font-size: 1.4rem;
    font-weight: 600;
    color: #004874;
}
.sec14 .wrapper{
    display: block;
}

.sec14 .h2-title{
    max-width: none;
    justify-content: center;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
}

.sec14 .flex{
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: 10rem;
}

.sec14 .item-head {
    background-color: #D1ECF7;
    display: flex;
    padding: 1rem;
    height:140px;
    border-radius: 15px 15px 0 0;
}

.sec14{
    margin:10rem 0;
}

.sec14 .item-head-left {
    width: 7rem;
    height: 7rem;
    min-width: 100px;
    min-height: 100px;
    background-color: #00A1DE;
    color: #ffff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
    margin-top: -3rem;
}

.sec14 .item-head-left .num {
    font-size: 3rem;
    font-weight: bold;
}

.sec14 .item-head-title{
    font-size: 1.625rem;
    font-weight: bold;
    margin: 0;
}

.sec14 .item-head-right {
    max-width: 389px;
    margin-left: 1rem;
    margin: .5rem 0 0 1rem;
}

.sec14 .item-bottom {
    padding: 2rem;
}

.sec14 .item{
    box-shadow: 0 0 10px 0px #CDCDCD;
    border-radius: 15px;
    margin-bottom: 5rem;
    height: 515px;
}

.sec14 .bottom-text {
    font-weight: bold;
    font-size: 1.5rem;
    max-width: 1110px;
    margin: 0 auto;
}

.sec15 .wrapper{
    display: block;
}

.sec15 .h2-title{
    max-width: none;
    justify-content: center;
    font-family: "Hiragino Kaku Gothic ProN", "YakuHanJP", "Hiragino Sans", "Noto Sans JP", "Meiryo", sans-serif;
    padding-top: 15rem;
}

.sec15 .wrapper01{
    background:none;
    z-index: 0;
    position: relative;
    padding-bottom: 24rem;
    margin-top: -2em;
}

.sec15 .wrapper01:before{
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;  /* 背景として裏に */
}

.sec15 .wrap{
    max-width: 1200px;
    margin: 0 auto;
}

.sec15 .item-inner {
    background-color: #fff;
    border: 4px solid #CDCDCD;
    border-radius: 12px;
    padding: 2rem 3rem;
}

.sec15 .item-tag{
    max-width: 95px;
    margin: 0 2rem 0 auto;
}

.sec15 .item-tag img{
    vertical-align: bottom;
}

.sec15 .item-head {
    display: flex;
    height: 165px;
}

.sec15 .item-head-left span {
    color: #AAAAAA;
    font-weight: bold;
    font-size: 16rem;
}

.sec15 .item-head-left{
    margin-left: -70px;
    margin-top: -220px;
    width: 20%;
}

.sec15 .h3-title{
    font-size: 2.375rem;
    margin: 0;
    font-weight: bold;
}

.sec15 .item{
    width: 70%;
    max-width: 887px;
    margin-top: 8rem;
}

.sec15 .wrapper02 .item{
    margin-top: 0;
}

.sec15 .item-text{
    font-size: 1.5rem;
}

.sec15 .item.right {
    margin: 20px 0 0 auto;
}

.sec15 .wrapper03{
    background:none;
    z-index: 1;
    position: relative;
    padding-bottom: 4rem;
}

.sec15 .wrapper03:before {
    clip-path: polygon(0 3%, 100% 380px, 100% 100%, 0% 100%);
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #F7F7F7;
    z-index: -1;
}

.sec15 .item-head-right {
    margin-left: 20px;
}

.sec15 .bottom-text{
    max-width: 1110px;
    margin: 5rem auto;
    font-weight: bold;
    font-size: 1.5rem;
}

.martop-10rem {
    margin-top: -10rem!important;
        z-index: 1;
    position: relative;
}
@media screen and (max-width: 768px) {
    .question-a p {
        font-size: 1.5em;
    }
    .fv .wrapper{
        flex-direction: column;
    }

    .fvbox h1{
        font-size: 2rem;
    }

    .fvbox {
        padding: 60px 0 0;
    }

    .h1_txt {
        line-height: 1.3;
    }

    .h1_subtxt{
        font-size: 14px;
        font-weight: normal;
        margin-top: 10px;
    }

    .main-image{
        max-width: 211px;
        margin: 0 auto;
        min-width: 211px;
    }

    .slide img {
        padding: 0;
    }

    .h2-title{
        max-width: 13rem;
        font-size: 1rem;
        margin: 0 auto;
        justify-content: center;
    }

    .h2-title img {
        max-width: 125px;
    }

    .text-01{
        font-size: .875rem;
    }
    .flex{
        flex-direction: column-reverse;
    }

    .flex .text-01 {
        width: auto;
    }
    .flex .flex-img{
        width: 65%;
    }
    .col-sp{
        flex-direction: column;
    }
    .sec01{
        padding: 0 20px 175px;
    }
    .sec02{
        margin-top: -15rem;
        background-color: #F7F7F7;
        padding-bottom: 3rem;
    }
    .sec02 .h2-title{
        padding-top: 15rem;
        flex-direction: column;
        max-width: 12rem;
        letter-spacing: 1px;
    }
    .wrapper{
        display: block;
        padding: 0 20px;
    }
    .flex{
        flex-direction: column;
    }
    .item{
        width: auto;
        background-color: #fff;
        padding: 15px;
        border-radius: 12px;
        margin-top: 20px;
    }
    .h3-num span{
        width: 34px;
        height: 34px;
        font-size: 1.25rem;
    }
    .h3-txt span{
        font-size: .5rem;
        letter-spacing: 1px;
    }
    .h3-txt {
        font-size: .875rem;
        margin-left: .5rem;
    }
    .item-img {
        max-width: 178px;
        margin: 0 auto;
    }
    .h3-title{
        margin: 0 0 10px;
    }
    .item-bottom {
        font-size: .625rem;
    }
    .sec10{
        margin-top: 0;
        position: static;
        background: rgb(45, 90, 179, .13);
        padding-bottom: 3rem;
    }
    .sec10 .h2-title{
        font-size: 1rem;
    }
    .sec10 .h2-title span{
        font-size: .875rem;
        margin-top: 3px;
    }
    .sec10 .h2-title img {
        max-width: 20vw;
    }
    .sec10 .inner{
        padding: 1rem;
    }
    .sec10 .inner-wrap{
        flex-direction: column-reverse;
    }
    .sec10 .inner-wrap-right{
        width: auto;
    }
    .sec10 .inner-wrap-left{
        width: auto;
        margin-top: 10px;
    }
    .sec10 .txt-box{
        font-size: .875rem;
    }
    .sec10 .txt-box.mt4rem{
        margin-top: 2rem;
    }
    .sec10 .inner-img{
        max-width: none;
    }
    .sec11{
        margin-top: 0;
        padding-bottom: 0;
    }
    .sec11 .h2-title{
        margin-top: 0;
        padding-top: 4rem;
        font-size: 1.375rem;
        letter-spacing: 1px;
    }
    .sec11 .h2-title span{
        font-size: 1rem;
    }
    .sec11 .h2-title img{
        margin-right: 5px;
    }
    .sec11 .flex{
        margin-top: 1rem;
    }
    .sec11 .item{
        padding: 0;
    }
    .sec11 .item-head-tag{
        max-width: none;
        font-size: .875rem;
        left: 10%;
        width: 80%;
        padding: .3rem 1rem;
    }
    .sec11 .h3-title{
        font-size: 1.125rem;
        padding: 1.5rem 0 0.5rem;
    }
    .sec11 .item-bottom {
        padding: 1rem 2rem;
    }
    .sec11 .item-img{
        width: auto;
    }
    .sec11 .item-text{
        margin-top: 1rem;
        margin-bottom: 0;
    }
    .sec03 .h2-title {
        max-width: none;
    }
    .h2-title .img1{
        max-width: 200px;
        margin-right: 8px;
    }
    .h2-title .img2{
        max-width: 70px;
    }
    .sec03 .inner{
        margin: 0 20px;
        flex-direction: column-reverse;
        background-color:rgb(45, 90, 179, .13) ;
        padding: 0 0 20px;
    }
    .sec03:before{
        clip-path: polygon(0 12%, 100% 0, 100% 100%, 0% 100%);
        background: #fff;
    }
    .inner-right{
        width: 80%;
    }
    .inner-left{
        width: auto;
        font-size: .875rem;
        padding: 0 20px;
    }
    .inner-head{
        background-color: #1C4CB1;
        color: #fff;
        border-radius: 8px 8px 0 0;
        font-weight: bold;
        padding: 15px;
    }
    .sec03{
        padding-bottom: 100px;
    }
    .sec03 .wrapper{
        margin-top: 0;
    }
    .sec03 .wrapper-table{
        margin: 0 auto 0;
    }
    .sec03 .wrapper .h2-title{
        font-size: 1.125rem;
    }
    .sec03 .wrapper .h2-title img{
        max-width: 208px;
    }
    .sec03 .wrapper-table{
        margin: 0 20px;
    }
    .newinde_cta{
        background: url(../images/newindeximg/cta_back02-sp.png);
        background-size: 100% 100%;
    }

    .cta_inner h2 {
        font-size: 20px;
        letter-spacing: 2px;
    }

    .cta_btn_box{
        flex-direction: row;
        justify-content: space-between;
    }

    .cta_btn_box a div{
        min-width: 165px;
        max-width: 165px;
        min-height: 47px;
    }
    .cta_btn_box a div.btnl > p, .cta_btn_box a div.btnr > p{
        font-size: .875rem;
    }
    .cta_btn_box a div img{
        width: 34px;
        right: 16px;
        bottom: 0;
    }
    .sec08{
        background-color: #E3EAF6;
        padding-bottom: 70px;
        margin-top: -1em;
        z-index: 0;
    }
    .sec08 .h2-title img{
        max-width: 208px;
        margin-right: 3px;
    }
    .sec08 .h2-title{
        font-size: 1.125rem;
        padding-top: 3rem;
    }
    .sec08 .block {
        background-color: #fff;
        border-radius: 8px;
        box-shadow: 0 0 10px 1px #cdcdcd;
        padding: 20px 15px;
        margin-top: 30px;
    }
    .sec08 .block-title{
        font-weight: bold;
        font-size: 1.125rem;
        letter-spacing: 1px;
        margin: 0 0 10px;
    }
    .sec08 .block-text{
        font-size: .875rem;
    }
    .sec08 .block-text p{
        margin-top: 15px;
    }
    .staff_intro ul li {
        flex-direction: row;
        padding: 5px;
    }
    .picwaku{
        padding: 0;
        justify-content: center;
    }
    .staff_intro ul li .career_des{
        padding: 0;
    }
    .staff_intro ul li .career_des p{
        font-size: .75rem;
        padding: 5px 5px 5px 15px;
    }
    p.position{
        letter-spacing: 1px;
    }
    .staff_intro ul{
        padding: 0;
    }
    .sec09{
        background-color: #E3EAF6;
        padding-top: 40px;
        margin-top: -15px;
        padding-bottom: 45px;
    }
    .sec09 .h2-title{
        font-size: 1.125rem;
    }
    .sec09 .h2-title img{
        max-width: 208px;
    }
    .sec09 .flex{
        margin-top: 1rem;
    }
    .sec09 .item{
        width: 49%;
        padding: 0;
        border: 0;
        border-radius: 4px;
    }
    .sec09 .item-bottom {
        padding: 5px;
        height: auto;
        margin-bottom: 10px;
    }
    .sec09 .item-title{
        font-size: .75rem;
    }
    .sec09 .item-text {
        font-size: .625rem;
        margin-top: 10px;
    }
    .sec09 .flex{
        flex-direction: row;
    }
    .sec13 .h2-title{
        margin-top: 0;
        padding-top: 4rem;
        font-size: 1.125rem;
    }
    .qestion-block-wrapper{
        margin-top: 0;
    }
    .question-block{
        padding: 1rem;
        background-color: #f7f7f7;
        border-radius: 8px;
        margin-top: 3rem;
    }
    .question-q{
        font-size: .75rem;
        align-items: flex-start;
    }
    .question-q span{
        font-size: .75rem;
    }
    .question-a{
        background-color: #FFF;
        border-radius: 6px;
        font-size: .5rem;
        padding: .5rem 1rem;
    }
    .sec14 {
        margin: 1rem 0 5rem;
    }
    .sec14 .h2-title{
        text-align: center;
    }
    .sec14 .flex{
        margin-top: 2rem;
    }
    .sec14 .item{
        padding: 0;
        height: auto;
        margin-bottom: 3rem;
    }
    .sec14 .item-head{
        flex-direction: column;
    }
    .sec14 .item-head-left .num{
        font-size: 1.5rem;
    }
    .sec14 .item-head-left{
        margin: -3rem auto;
        width: 4rem;
        height: 4rem;
        font-size: .625rem;
        min-width: auto;
        min-height: auto;
    }
    .sec14 .item-head-right {
        max-width: none;
        margin: 54px 0 0 0;
        text-align: center;
    }
    .sec14 .item-head-title{
        font-size: 1rem;
    }
    .sec14 .item-head{
        height: auto;
        letter-spacing: 1px;
    }
    .sec14 .item-bottom {
        padding: 1rem;
        font-size: .875rem;
    }
    .sec14 .bottom-text{
        font-size: .875rem;
    }
    .sec15 .h2-title{
        padding-top: 2rem;
    }
    .sec15 .item{
        margin-top: 1rem;
        background-color: initial;
        width: auto;
    }

    .sec15 .item-tag{
        max-width: 63px;
    }

    .sec15 .item-head-left span{
        font-size: 8rem;
    }
    .sec15 .item-head-left{
        margin-top: -120px;
        margin-left: -50px;
    }
    .sec15 .h3-title {
        font-size: 1.125rem;
        letter-spacing: 1px;
    }
    .sec15 .item-inner{
        padding: 1rem 2rem;
    }
    .sec15 .item-text {
        font-size: .75rem;
    }
    .sec15 .item-head {
        height: auto;
    }
    .sec15 .wrapper01{
        padding: 0;
        margin-top: -.5em;
    }
    .sec15 .bottom-text {
        max-width: none;
        margin: 2rem 20px;
        font-weight: bold;
        font-size: 1rem;
    }
    .sec15 .wrapper03{
        padding-bottom: 1rem;
    }
    footer .footer-container{
        z-index: 1;
    }
    .sec10:before{
        height: auto;
    }
    .martop-10rem {
        margin-top: 0!important;
    }
}
.jisseki li.title {
    font-size: 1.5rem;
}
.jisseki li {
    font-size: 1.4rem;
        list-style: disc;
    margin-left: 1em;
}

img.jireimg {
    max-height: 300px;
    width: 100%;
    height: auto;
    overflow: hidden;
    object-fit: cover;
    box-shadow: 0px 2px 17px #EAEAEA;
    border-radius: 8px;

}