*, *::before, *::after {
    box-sizing: border-box;
  } 

body {
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
    overflow-x: hidden;
    }

.faq__body,.footCvArea__body {
    margin:0 auto;
    padding:0 15px;
    width:100%;
    max-width:1030px
}

.service{
    font-feature-settings:"palt";
}

.section {
    padding: 0;
}

.service p,.service ul{
    margin-bottom:4px;
    line-height:1.8
}

@media screen and (max-width:750px){
    .service p,.service ul{
        font-size:14px;
        line-height:1.7
    }
}

.service p:last-child,.service ul:last-child{
    margin-bottom:0
}

.service p a,.service ul a{
    font-weight:bold;
    color:#00b2b3
}

.service p a span,.service ul a span{
    text-decoration:underline
}


.service div,.service p,.service ul,.service li,.service .inner{
    box-sizing:border-box
}

@media screen and (max-width:750px){
    .service .inner{
        padding:0 4px
    }
}

.service__header{
    width:100%;
    height:290px;
    background:url(../images/img_faq_mv_pc.png) center/cover no-repeat,#edf8f9;
    padding: 80px 16px;
}

@media screen and (max-width:750px){
    .service__header{
        height:200px;
        box-shadow:0 -2px 4px rgba(0,0,0,0.05) inset;
        background:url(../images/img_faq_mv_sp.png) center/cover no-repeat;
        padding: 40px 16px;
    }
}

.service__header .inner{
    display: flex;
    max-width: 1030px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
    color:#fff;
}

.service-header-title{
    display: flex;
    padding: 0 48px 16px 0;
    flex-direction: column;
    align-items: flex-start;
    border-bottom: 2px solid #FFF;
    font-size:36px;
    line-height:1.2;
}

.service__header p{
    font-size:14px;
}

@media screen and (max-width:750px){
    .service__header .inner{
        gap: 12px;
    }
    .service-header-title{
        width: 250px;
        padding: 0 40px 12px 0;
        font-size:22px;
    }
    .service__header p{
        font-size:13px;
    }
}

.service .breadcrumb{
    max-width:1000px;
    margin:auto;
    padding:5px;
    line-height:1
}

@media screen and (max-width:750px){
    .service .breadcrumb{
        width:100%;
        padding:5px 10px;
        border-top:solid 1px #eee;
        overflow-x:scroll;
        white-space:nowrap
    }
}

.service .breadcrumb li{
    letter-spacing:normal;
    display:inline;
    line-height:1;
    vertical-align:top;
    font-size:11px
}

.service .breadcrumb li:before,.service .breadcrumb li:first-child::before{
    font-family:Font Awesome\ 5 Free;
    font-weight:900;
    color:#333;
    line-height:2;
    display:inline-block
}

.service .breadcrumb li:first-child::before{
    content:'\f015';
    margin:0
}

.service .breadcrumb li:before{
    content:'\f105';
    margin:0 .5em
}

.service .breadcrumb li a{
    line-height:1;
    font-size:11px;
    display:inline-block;
    line-height:2;
    padding-left:.2em;
    font-weight:normal;
    color:#333
}

.service .breadcrumb li span{
    text-decoration:none
}

.service .breadcrumb li span:hover{
    text-decoration:underline
}

.service__heading,.service__heading--lv1,.service__heading--lv2,.service__heading--lv3 {
    line-height:1.2
}
.service__heading--lv1 {
    font-size:38px
}
@media screen and (max-width:750px) {
    .service__heading--lv1 {
    font-size:22px
}
}
.service__heading--lv2 {
    font-size:26px
}
@media screen and (max-width:750px) {
    .service__heading--lv2 {
    font-size:20px
}
}
.service__heading--lv3 {
    font-size:22px
}
@media screen and (max-width:750px) {
    .service__heading--lv3 {
    font-size:18px
}
}
.service__headingText--green {
    color:#00b2b3
}

.faq {
    padding:50px 0;
    background:#f8f8f8
}
@media screen and (max-width:750px) {
    .faq {
    padding:30px 0;
    background:#ffffff
}
}
.faq__body {
    border-top:3px solid #00b2b3;
    padding:30px;
    background:#ffffff
}
@media screen and (max-width:750px) {
    .faq__body {
    border-top:none;
    padding:0 15px
}
}
.faq__heading {
    text-align:center
}
.faq__headList {
    display:flex;
    justify-content:center;
    margin-top:20px
}
@media screen and (max-width:750px) {
    .faq__headList {
        flex-flow:row wrap
    }
}
.faq__headItem {
    flex:1 1 auto;
    padding:5px;
    max-width:25%
}
@media screen and (max-width:750px) {
    .faq__headItem {
    padding-left:0;
    padding-right:0;
    width:100%;
    max-width:none;
    position:relative
}
}
.faq__headAnchor {
    display:flex;
    justify-content:center;
    align-items:center;
    border:2px solid #00b2b3;
    border-radius:10px;
    padding:5px 20px;
    height:100%;
    min-height:50px;
    color:#00b2b3;
    font-weight:bold;
    text-align:center;
    transition-property:background-color, color;
    transition-duration:0.2s;
    position:relative;
    font-size:14px
}
@media screen and (max-width:750px) {
    .faq__headAnchor {
    min-height:46px
}
}
.faq__headAnchor:after {
    content:'';
    border-right:2px solid #00b2b3;
    border-bottom:2px solid #00b2b3;
    width:5px;
    height:5px;
    position:absolute;
    top:45%;
    right:10px;
    transform:translateY(-50%) rotate(45deg);
    transition-property:margin-top, border-color;
    transition-duration:0.2s
}
.faq__headAnchor:hover {
    background-color:#00b2b3;
    color:#ffffff
}
.faq__headAnchor:hover:after {
    margin-top:2px;
    border-color:#ffffff
}
.faq__inner {
    margin-top:40px;
    font-size:14px
}
@media screen and (max-width:750px) {
    .faq__inner {
        margin-top:0px;
    }
}
.faq__list {
    margin-top:20px
}
.faq__item {
    border-bottom:1px solid #ececec
}
.faq__question {
    padding:15px 50px 15px 70px;
    position:relative;
    transition:background-color 0.2s
}
@media screen and (max-width:750px) {
    .faq__question {
        padding:10px 35px 10px 50px
    }
}
.faq__question:after,.faq__question:before {
    content:'';
    width:20px;
    height:2px;
    background:#00b2b3;
    position:absolute;
    top:50%;
    right:15px;
    transform:translateY(-50%)
}
@media screen and (max-width:750px) {
    .faq__question:after,.faq__question:before {
    width:16px;
    right:10px
}
}
.faq__question:after {
    transform:translateY(-50%) rotate(-90deg);
    transition:transform 0.2s
}
.faq__question:hover {
    background-color:#f2f2f2;
    cursor:pointer
}
.faq__question.is-opened:after {
    transform:translateY(-50%) rotate(0deg)
}
.faq__answer {
    display:none;
    border-top:1px solid #ececec;
    padding:15px 50px 15px 70px;
    background:#EDF8F9;
    position:relative
}
@media screen and (max-width:750px) {
    .faq__answer {
    padding:10px 35px 10px 50px
}
}
.faq__icon,.faq__icon--green,.faq__icon--white {
    display:flex;
    justify-content:center;
    align-items:center;
    border:2px solid #00b2b3;
    width:40px;
    height:40px;
    font-size:18px;
    font-weight:500;
    position:absolute;
    top:15px;
    left:15px
}
@media screen and (max-width:750px) {
    .faq__icon,.faq__icon--green,.faq__icon--white {
    width:30px;
    height:30px;
    font-size:16px;
    top:10px;
    left:10px
}
}
.faq__icon--green {
    background-color:#00b2b3;
    color:#ffffff
}
.faq__icon--white {
    background-color:#ffffff;
    color:#00b2b3
}
.faq__text {
    display:flex;
    align-items:center;
    min-height:40px;
    line-height:1.8
}
@media screen and (max-width:750px) {
    .faq__text {
    min-height:30px
}
}
.faq__anchor {
    display:inline-block;
    text-decoration:underline;
    margin-top:0.5em
}
.faq__anchor:after {
    content:'';
    display:inline-block;
    border-top:1.5px solid #000000;
    border-right:1.5px solid #000000;
    width:5px;
    height:5px;
    transform:translate(5px, -2px) rotate(45deg);
    transition:transform 0.2s
}
.faq__anchor:hover {
    text-decoration:none
}
.faq__anchor:hover:after {
    transform:translate(9px, -2px) rotate(45deg)
}

.service .content_cv_btn{
    height:80px
}

@media screen and (max-width:750px){
    .service .content_cv_btn{
        height:55px;
        font-size:18px;
    }
}

.service .content_cv_btn a{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    padding:12px 0 5px;
    font-weight:normal;
    color:#ffffff}

@media screen and (max-width:750px){
    .service .content_cv_btn a{
        padding:8px 0 5px
    }
}

.service .content_cv_btn span{
    padding:6px 5px 3px;
    font-weight:normal;
    text-decoration:none
}

.service .content_cv_btn .service-btn-caption{
    width:100%;
    padding:0;
    background:none;
    color:#ffffff
}

@media screen and (max-width:750px){
    .service .service-btn{
        height:70px
    }
}

@media screen and (max-width:750px){
    .container section.p50.-last50 {
        padding-bottom:0px;
    }
}