@charset "utf-8"; 

.bg_blue {
    background: rgba(153,165,183,.2);
}
.page-ttl{
    padding: 7% 0 6% 0;
}

@media screen and (max-width : 767px){


}

/* ------------------------------
new css
------------------------------ */
.container{
    position: relative;
    margin-top: -10px;
    background: url("../img/online/bgCol03.jpg") repeat-ycenter 600px;
    background-size: 100% auto;
    overflow: inherit;
    box-sizing: border-box;
}

.pnkz ul li,
.pnkz ul li a{ color: #FFF;}
.pnkz ul li:not(:last-of-type):after {
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
}
.container:before {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    content: '';
    width: 100%;
    height: 709px;
    background: url(../img/pcr/main_pc@2x.jpg) no-repeat center 90px;
    background-size: cover;
    z-index: -1;
}

.page-ttl {
    padding: 50px 0 70px 0;
    box-sizing: border-box;
}
.page-ttl{
    color: #FFF;
    font-weight: 500;
    letter-spacing: .15rem;
}
.page-ttl .big {
    display: block;
    font-size: 4.0rem;
    line-height: 1.45;
    margin-top: 10px;
    letter-spacing: .8rem;
}

.ttl {
    position: relative;
    text-align: center;
    font-size: 2.1rem;
    letter-spacing: .2rem;
    font-weight: 700;
    color: #001f4b;
    margin-bottom: 40px;
}
.ttl:before {
    display: inline-block;
    vertical-align: middle;
    content: '';
    margin: 0 20px 0 0;
    background-size: 100% auto !important;
}

@media screen and (max-width : 767px){
    .container{
        background: none;
    }
    .container:before{
        display: none;
    }

    .pnkz ul li{ color: #001f4b;}
    .pnkz ul li a{ color: #99a5b7;}
    .pnkz ul li:not(:last-of-type):after {
        border-top: 1px solid #99a5b7;
        border-right: 1px solid #99a5b7;
    }
    .page-ttl{
        color: #001f4b;
        padding: 8% 0 7% 0;
    }
    .page-ttl .big {
        font-size: 6.7vw;
        margin-top: 10px;
        letter-spacing: .2rem;
    }

    .ttl {
        font-size: 5.867vw;
        letter-spacing: .3rem;
        margin-bottom: 6%;
        line-height: 1.2;
    }
    .ttl:before {
        display: block;
        margin: 0 auto 3% auto;
    }



}
/* ------------------------------
sec01
------------------------------ */
.sec01.inner {
    max-width: 1200px;
    padding-top: 10px;
    box-sizing: border-box;
}

@media screen and (max-width : 767px){
    .sec01.inner {
        width: 100%;
    }

}

/* ------------------------------
sec02
------------------------------ */
.sec02.inner{
    padding: 62px 0 0;
}
.sec02 .ttl:before {
    background: url(../img/pcr/ico_pcr.svg) no-repeat center center;
    width: 46px;
    height: 54px;
}
.red_text {
    color: #d4001d;
    font-size: 1.5rem;
    font-weight: 500;
    margin: -20px 0 20px;
    text-align: center;
}
.sec02 .box_wrap02{
    display: flex;
    justify-content: space-between;
}
.sec02 .box_wrap03{
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}
.sec02 .box{
    width: 32%;
    max-width:316px;
}
.sec02 .box02{
    margin: 0 auto;
    width: 59%;
/*    max-width:475px;*/
}
.sec02 .box.box-2{
    width: 66%;
    max-width:660px;
}
.sec02 .box h3{
    font-size: 2.0rem;
    letter-spacing: .15rem;
    font-weight: 500;
    text-align: center;
    color: #FFF;
    background: #001e4e;
    padding: 18px 10px 22px 10px;
    box-shadow: 3px 3px 18px -4px rgb(114 114 114 / 30%);
    box-sizing: border-box;
    border-radius: 16px 16px 0 0;
}
.sec02 .box02 h3{
    font-size: 2.0rem;
    letter-spacing: .15rem;
    font-weight: 500;
    text-align: center;
    color: #FFF;
    background: #001e4e;
    padding: 18px 10px 22px 10px;
    box-shadow: 3px 3px 18px -4px rgb(114 114 114 / 30%);
    box-sizing: border-box;
    border-radius: 16px 16px 0 0;
}

.sec02 .box .whiteBox{
    display: flex;
    height: auto!important;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 15px;
    padding: 20px 20px 35px 20px;
    background: #FFF;
    box-shadow: 3px 3px 18px -4px rgb(114 114 114 / 30%);
    box-sizing: border-box;
    border-radius: 0 0 16px 16px;
    height: 259px
}
.sec02 .box02 .whiteBox{
    display: flex;
    height: auto!important;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 15px;
    padding: 20px 20px 35px 20px;
    background: #FFF;
    box-shadow: 3px 3px 18px -4px rgb(114 114 114 / 30%);
    box-sizing: border-box;
    border-radius: 0 0 16px 16px;
}
.sec02 .box h4,.sec02 .box02 h4{
    text-align: center;
    margin-bottom: 10px;
}
.sec02 .box h4 span,.sec02 .box02 h4 span{
    display: inline-block;
    width: 100%;
    max-width: 174px;
    margin: 0 auto;
    font-size: 1.8rem;
    font-weight: 600;
    border-radius: 10px;
    padding: 8px 10px 12px 10px;
    box-sizing: border-box;
}
.sec02 .box .price{
    position: relative;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: .2rem;
    color: #001f4b;
    margin-bottom: 15px;
}
.sec02 .box02 .price{
    position: relative;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: .2rem;
    color: #001f4b;
    margin-bottom: 15px;
}
.sec02 .box02 .price02{
    position: relative;
    text-align: center;
    font-size: 4.2rem;
    font-weight: 600;
    letter-spacing: .2rem;
    color: #c42629;
    margin-bottom: 10px;
}
.sec02 .box .price .border{
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 0 0 7px 0;
    box-sizing: border-box;
}
.sec02 .box .price .border span02{
    font-size: 0.68em;
}
.sec02 .box .price .border02{
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 0 0 7px 0;
    box-sizing: border-box;
    line-height: 1.25;
    font-size: 0.83em;
}
.sec02 .box02 .price .border{
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 0 0 7px 0;
    box-sizing: border-box;
}
.sec02 .box .price .border:after{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    display: block;
    content: '';
    width: 120%;
    height: 1px;
    background: #001f4b;
}
.sec02 .box .price .border02:after{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    display: block;
    content: '';
    width: 100%;
    height: 1px;
    background: #001f4b;
}
.sec02 .box02 .price .border:after{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    display: block;
    content: '';
    width: 120%;
    height: 1px;
    background: #001f4b;
}

.sec02 .box .price .note{
    margin-top: 3px;
    display: block;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: .05rem;
    font-weight: 500;
}
.sec02 .box02 .price .note{
    margin-top: 3px;
    display: block;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: .05rem;
    font-weight: 500;
}
.sec02 .box .flex,.sec02 .box02 .flex{
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec02 .box .flex .price .border:after{
    width: 105%;
}
.sec02 .box02 .flex .price .border:after{
    width: 105%;
}
.sec02 .box .flex p+p{ margin-left: 10%;}
.sec02 .box02 .flex p+p{ margin-left: 10%;}

.sec02 .box .grayBox,.sec02 .box02 .grayBox{
    padding: 15px 30px 15px 30px;
    background: #f1f3f5;
    box-shadow: 3px 3px 18px -4px rgb(114 114 114 / 30%);
    border-radius: 0 0 0 16px;
    box-sizing: border-box;
}
.sec02 .box.box-2 .grayBox{ border-radius: 0 0 16px 0;}

.sec02 .box .whiteBox h4 span{
    color: #c42629;
    background: rgba(212,0,29,.1);
    border: 2px solid #c42629;
}
.sec02 .box02 .whiteBox h4 span{
    color: #c42629;
    background: rgba(212,0,29,.1);
    border: 2px solid #c42629;
}
.sec02 .box .grayBox h4 span{
    color: #001e4e;
    background: rgba(0,30,78,.1);
    border: 2px solid #001e4e;
}
.sec02 .box02 .grayBox h4 span{
    color: #001e4e;
    background: rgba(0,30,78,.1);
    border: 2px solid #001e4e;
}
.sec02 .box .atten,
.sec02 .box .atten02,
.sec02 .box02 .atten,
.sec02 .box02 .atten02{
    font-size: 1.4rem;
    line-height: 1.85;
    font-weight: 500;
    color: #c42629;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
}
.sec02 .box .atten02{
    text-align: left;
    text-indent: 0;
    margin-left: 0;
    color: #001e4e;
}
.sec02 .box02 .atten02{
    text-align: left;
    text-indent: 0;
    margin-left: 0;
    color: #001e4e;
}
.sec02 .box02 .atten02 a{
    color: #001e4e;
    text-decoration: underline;
}
.sec02 .box02 .atten02 a:hover{
    color: #c42629;
}
.sec02 .box02 .atten02 span{
    color: #c42629;
}

.sec02 .atten03{
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 500;
    color: #d4001d;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
}
.sec02 .box.box-2 .atten03{
    text-align: center;
}
.red {
    color: #d4001d;
}
.blue {
    color: #001f4b;
}
.pcr_box {
    width: 76%;
    border: solid 1px #001f4b;
    padding: 30px 50px;
    border-radius: 16px;
    margin: 50px auto 100px;
}
.pcr_box02 {
    width: 90%;
    border: solid 1px #001f4b;
    padding: 30px 50px;
    border-radius: 16px;
    margin: 30px auto;
}
.pcr_box02 a{
    color: #001f4b;
    text-decoration: underline;
}
.pcr_box02 a:hover{
    color: #d4001d;
}
.pcr_contents {
    max-width: 900px;
    margin: 0 auto;
}
.pcr_contents02 {
    padding-left: 15%;
}
.pcr_contents03 {
    padding: 0 1.5%;
    margin: 0 auto;
}
.pcr_contents02 ul{
    margin-bottom: 20px;
    padding-left: 14%;
}
.pcr_contents li{
    font-size: 1.5rem!important;
    font-weight: 500;
    list-style: initial;
}
.pcr_contents h3 {
    position: relative;
    text-align: center;
    margin-bottom: 20px;
}
.pcr_contents h4 {
    position: relative;
    color: #001f4b;
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}
.pcr_contents h3:before, .pcr_contents h3:after {
    position: absolute;
    top: 50%;
    display: block;
    content: '';
    width: 34%;
    height: 1px;
    background: #001f4b;
}
.pcr_contents h3:before, .pcr_contents h3:after {
    width: 25%;
}
.pcr_contents h3:before {
    left: 0;
}
.pcr_contents h3:after {
    right: 0;
}
.pcr_contents h3 span {
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.45;
    font-weight: 700;
    color: #001f4b;
}

.time {
    margin-bottom: 100px;
}
.time img {
    width: 100%;
}
.time .ttl:before {
    background: url(../img/pcr/ico-time.svg) no-repeat center center;
    width: 53px;
    height: 54px;
}
.time p {
    font-size: 1.5rem;
    margin: 10px 0 0 20px;
}

.free {
    padding: 0 5%;
    margin-bottom: 100px;
}
.free .ttl:before {
    background: url(../img/pcr/ico-free.svg) no-repeat center center;
    width: 54px;
    height: 54px;
}
.free h3 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #001f4b;
    text-align: center;
    margin-bottom: 30px;
}
.free p {
    font-size: 1.5rem;
}
.free .btn_wrap{
    margin: 30px auto 35px auto;
}
.free .btn_wrap span{
    color: #fff;
}
.free .btn_wrap{
    margin: 0 auto;
}
.free .btn_wrap .btn {
    position: relative;
    max-width: 390px;
    margin: 0 auto;
    padding: 15px 10px 17px 10px;
}
.free .btn_wrap .btn span{
    position: relative;
}

.event {
    margin-bottom: 100px;
}
.event_text {
    padding: 0 9%;
}
.event_text a{
    color: #001f4b;
    text-decoration: underline;
}
.event_text a:hover{
    color: #c42629;
}
.event_text02 {
    font-weight: bold;
    color: #d4001d;
    margin: 10px 0 50px;
}
.event_box {
    width: 100%;
    border: solid 1px #001f4b;
    padding: 30px 40px;
    border-radius: 16px;
    margin: 30px auto 20px;
}
.event .ttl:before {
    background: url(../img/pcr/ico-event.svg) no-repeat center center;
    width: 52px;
    height: 52px;
}
.event h3 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #001f4b;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 30px;
}
.event p {
    font-size: 1.5rem;
}
.event .check_list{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}
.event .check_list li{
    position: relative;
    font-size: 1.5rem;
    line-height: 1.75;
    font-weight: 600;
    color: #001f4b;
    padding-left: 26px;
    box-sizing: border-box;
}
.event .check_list li+li{ margin-top: 20px;}
.event .check_list li:before{
    position: absolute;
    left: 0;
    top: 8px;
    display: block;
    content: '';
    background: url("../img/online/ico_check.svg") no-repeat center center;
    background-size: 100% auto;
    width: 16px;
    height: 14px;
}
.event .btn_wrap{
    margin: 30px auto 35px auto;
}
.event .btn_wrap span{
    color: #fff;
}
.event .btn_wrap{
    margin: 0 auto;
}
.event .btn_wrap .btn {
    position: relative;
    max-width: 390px;
    margin: 0 auto;
    padding: 15px 10px 17px 10px;
}
.event .btn_wrap .btn span{
    position: relative;
}


@media screen and (max-width : 767px){
    .red_text {
        color: #d4001d;
        font-size: 1.5rem;
        font-weight: 500;
        margin: 10px 0 20px;
        text-align: center;
    }
    .sec02.inner{
        padding: 8% 0 0;
    }
    .sec02 .ttl:before {
        width: 11vw;
        height: 13vw;
    }
    .sec02 .box{
        width: 32%;
        max-width:inherit;
    }
    .sec02 .box02{
        margin: 0 auto;
        width: 80%;
    }
    .sec02 .box h3{
        font-size: 3.733vw;
        letter-spacing: .15rem;
        padding: 15px 5px 18px 5px;
        box-shadow: 2px 2px 9px -3px rgb(114 114 114 / 30%);
        border-radius: 10px 10px 0 0;
    }
    .sec02 .box:nth-of-type(1) h3{
        border-radius: 10px 10px 0 0;
    }
    .sec02 .box:last-of-type h3{
        border-radius: 10px 10px 0 0;
    }

    .sec02 .box .whiteBox{
        margin-bottom: 12px;
        padding: 12% 10%;
        box-shadow: 2px 2px 9px -3px rgb(114 114 114 / 30%);
    }
    .sec02 .box h4{
        margin-bottom: 10px;
    }
    .sec02 .box h4 span{
        width: 100%;
        max-width: inherit;
        margin: 0 auto;
        font-size: 2.933vw;
        border-radius: 5px;
        padding: 6px;
    }
    .sec02 .box .price{
        font-size: 3.733vw;
        letter-spacing: .15rem;
    }
    .sec02 .box:first-of-type .price{ margin-top: 11%;}
    .sec02 .box .price .border{
        padding: 0 0 3px 0;
    }
    .sec02 .box .price .border:after{
        width: 120%;
    }

    .sec02 .box .price .note{
        margin-top: 0;
        font-size: 2.4vw;
        letter-spacing: .05rem;
    }
    .sec02 .box .flex{
        display: block;
    }
    .sec02 .box .flex .price .border:after{
        width: 105%;
    }
    .sec02 .box .flex p+p{ margin-left: 0; margin-top: 5px;}

    .sec02 .box .grayBox{
        padding: 12px 10px;
        box-shadow: 2px 2px 9px -3px rgb(114 114 114 / 30%);
        border-radius: 0 0 0 10px;
    }
    .sec02 .box.box-2 .grayBox{
        border-radius: 0 0 10px 0;
    }
    .sec02 .box .atten{
        font-size: 2.4vw;
        text-indent: -2.6vw;
        margin-left: 2.6vw;
    }
    .sec02 .box .atten02{ font-size: 2.4vw;}
    .sec02 .atten03{
        margin: 0;
        font-size: 2.4vw;
        text-indent: 0;
    }
    .pcr_box {
        width: auto;
        padding: 30px;
        margin-bottom: 70px;
    }
    .pcr_box02 {
        width: auto;
        padding: 30px;
        margin-bottom: 40px;
    }
    .pcr_contents li {
        font-size: 1.5rem!important;
        list-style: initial;
        line-height: 1.5;
        margin-bottom: 8%;
    }
    .pcr_contents02 {
        padding-left: 1%;
    }
    .pcr_contents03 {
        padding: 0 1.5%;
        margin: 0 auto;
    }
    .pcr_contents02 ul{
        margin-bottom: 20px;
        padding-left: 1%;
    }
    .pcr_contents h3:before, .pcr_contents h3:after {
        display: none;
    }
    .event {
        margin-bottom: 70px;
    }
    .event_box {
        width: auto;
        padding: 30px;
    }
    .time {
        margin-bottom: 70px;
    }
    .free {
        padding: 0 5%;
        margin: 70px auto;
    }
    .free h3 {
        font-size: 1.8rem;
        font-weight: bold;
        color: #001f4b;
        text-align: center;
        margin-bottom: 30px;
        line-height: 1.3;
    }
    .pcr_contents h4 {
        position: relative;
        color: #001f4b;
        font-size: 1.7rem;
        font-weight: bold;
        text-align: center;
        margin-bottom: 20px;
        line-height: 1.3;
    }
}

/* ------------------------------
sec03
------------------------------ */
.sec03.inner{
    padding: 80px 0 20px;
}
.time_link {
    text-decoration: underline;
}
.time_link:hover {
    color: #d4001d;
    text-decoration: underline;
}
.sec03 .ttl{
    line-height: 1.85;
    color: #d4001d;
    letter-spacing: .15rem;
    margin-bottom: 20px;
}
.sec03 .ttl:before {
    display: block;
    margin: 0 auto 12px auto;
    background: url(../img/pcr/ico-caution_red.svg) no-repeat center center;
    width: 53px;
    height: 52px;
}
.sec03 .lead{
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.75;
}
.sp-acc_wrap.round_box_border {
    max-width: 100%;
    max-width: inherit;
    margin: 40px auto;
    background: #FFF;
    padding: 40px 60px;
    border: 1px solid #d4001d;
    border-radius: 16px;
    box-sizing: border-box;
}

.acc_btn p{
    text-align: center;
    color: #d4001d;
    font-size: 1.8rem;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 25px;
}
.acc_cnts .flex{
    display: flex;
    justify-content: space-between;
}
.acc_cnts .flex .text{
    width: 48%;
}

.acc_cnts p{
    font-size: 1.5rem;
    line-height: 1.85;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: -.03rem;
}
.acc_cnts p+p{ margin-top: 20px;}

.sec03 .ttl-border,
.sec04 h3,
.sec07 h2{
    position: relative;
    text-align: center;
    margin-bottom: 40px;
}

.sec03 .ttl-border:before,
.sec03 .ttl-border:after,
.sec04 h3:before,
.sec04 h3:after,
.sec07 h2:before,
.sec07 h2:after{
    position: absolute;
    top: 50%;
    display: block;
    content: '';
    width: 43%;
    height: 1px;
    background: #001f4b;
}
.sec03 .ttl-border:before,
.sec03 .ttl-border:after{ width: 33%;}

.sec03 .ttl-border:before,
.sec04 h3:before,
.sec07 h2:before{ left: 0;}
.sec03 .ttl-border:after,
.sec04 h3:after,
.sec07 h2:after{ right: 0;}

.sec03 .ttl-border span,
.sec04 h3 span,
.sec07 h2 span{
    text-align: center;
    font-size: 2.0rem;
    letter-spacing: .2rem;
    line-height: 1.45;
    font-weight: 700;
    color: #001f4b;
}
.sec03 .ttl-border span{
    font-size: 3.2rem;
}
.sec03 .check_list_wrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.sec03 .check_list_wrap .check_list+.check_list{ margin-left: 40px;}
.sec03 .check_list_wrap .check_list li{
    position: relative;
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 500;
    color: #001f4b;
    padding-left: 26px;
    box-sizing: border-box;
}

.sec03 .check_list_wrap .check_list li .red{
    color: #d4001d;
}

.sec03 .check_list_wrap .check_list li+li{ margin-top: 20px;}
.sec03 .check_list_wrap .check_list li:before{
    position: absolute;
    left: 0;
    top: 8px;
    display: block;
    content: '';
    background: url("../img/online/ico_check.svg") no-repeat center center;
    background-size: 100% auto;
    width: 16px;
    height: 14px;
}

.sec03 .check_list_wrap .check_txt{
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 500;
    color: #d4001d;
    padding: 0 95px;
    margin: 25px 0 0 0.7rem;
    text-indent: -0.7rem;
}

@media screen and (max-width : 767px){
    .sec03.inner{
        padding: 14% 0 8%;
    }
    .sec03 .ttl{
        letter-spacing: .15rem;
        margin-bottom: 5%;
    }
    .sec03 .ttl{
        font-size: 4.8vw;
        line-height: 1.75;
    }
    .sec03 .ttl:before {
        margin: 0 auto 8px auto;
        background-size: 100% auto;
        width: 11vw;
        height: 11vw;
    }
    .sec03 .lead{
        font-size: 3.733vw;
        text-align: left;
    }

    .sp-acc_wrap.round_box_border{
        margin: 10% auto;
        padding: 15px 15px 17px 15px;
        border-radius: 0;
        cursor: pointer;
    }
    .sp-acc_wrap .acc_btn{
        position: relative;
    }
    .sp-acc_wrap .acc_btn:before,
    .sp-acc_wrap .acc_btn:after{
        position: absolute;
        right: 15px;
        top: 50%;
        display: block;
        content: '';
        border-radius: 12px;
        background: #c42629;
    }
    .sp-acc_wrap .acc_btn:before{
        width: 18px ;
        height: 2px;
    }
    .sp-acc_wrap .acc_btn:after{
        width: 2px ;
        height: 18px;
        margin-top: -8px;
        margin-right: 8px;
        transition: .4s;
    }
    .sp-acc_wrap .acc_btn.on:after{ transform: rotate(-90deg);}

    .sp-acc_wrap .acc_btn p{
        font-size: 4.267vw;
        text-align: left;
        margin-bottom: 0;
    }
    .sp-acc_wrap .acc_cnts{
        display: none;
        padding: 5% 15px 0 15px;
        box-sizing: border-box;
    }
    .sp-acc_wrap .acc_cnts p{
        font-size: 3.733vw;
    }
    .acc_cnts p+p{ margin-top: 4%;}

    .acc_close_btn{
        margin: 35px auto 0 auto;
        width: 108px;
        height: 4px;
        background: #c42629;
        cursor: pointer;
        border-radius: 15px;
    }
    .acc_close_btn{
        text-align: center;
        margin: 8% auto 0 auto;
        width: 24vw;
        height: 3px;
        border-radius: 0;
    }

    .sec03 .ttl-border,
    .sec04 h3,
    .sec07 h2{
        margin-bottom: 8%;
    }

    .sec03 .ttl-border:before,
    .sec03 .ttl-border:after,
    .sec04 h3:before,
    .sec04 h3:after,
    .sec07 h2:before,
    .sec07 h2:after{
        width: 21%;
    }
    .sec03 .ttl-border span,
    .sec04 h3 span,
    .sec07 h2 span{
        font-size: 5.867vw;
        letter-spacing: .2rem;
    }
    .sec03 .check_list_wrap{
        display: block;
        width: 88%;
        margin: 0 auto;
    }
    .sec03 .check_list_wrap .check_list+.check_list{ margin-left: 0; margin-top: 4%;}
    .sec03 .check_list_wrap .check_list li{
        font-size: 3.733vw;
        padding-left: 6vw;
        box-sizing: border-box;
    }

    .sec03 .check_list_wrap .check_list li+li{ margin-top: 4%;}
    .sec03 .check_list_wrap .check_list li:before{
        top: 1.2vw;
        width: 4vw;
        height: 4vw;
    }

    .sec03 .check_list_wrap .check_txt{
        font-size: 2.4vw;
        padding: 0;
        margin: 5% 0 0 0;
        text-indent: 0;
    }
}

/* ------------------------------
reserve_wrap
------------------------------ */
.reserve_wrap{
    max-width: 1000px;
    margin-top: 60px;
    margin-bottom: 80px;
    background: rgba(202,202,202,.22);
    border-radius: 16px;
    padding: 65px 20px 88px 20px;
    box-sizing: border-box;
}
.reserve_wrap h2,
.reserve_wrap02 h2{
    position: relative;
    text-align: center;
    font-size: 2.4rem;
    letter-spacing: .25rem;
    color: #001f4b;
    font-weight: 700;
    margin: 0 auto 15px auto;
}
.reserve_wrap h2:before{
    position: relative;
    top: -5px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 20px;
    content: '';
    background: url("../img/pcr/ico_reserve.svg") no-repeat center center;
    width: 48px;
    height: 72px;
}

.reserve_wrap p{
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.6;
}
.reserve_wrap p.atten{
    margin-top: 15px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.6;
    color: #d3001d;
}

.reserve_wrap .btn_wrap{
    margin: 30px auto 35px auto;
}
.reserve_wrap .btn_wrap span{
    color: #fff;
}
.reserve_wrap02 .btn_wrap{
    margin: 58px auto 0 auto;
}
.reserve_wrap .btn_wrap .btn,
.reserve_wrap02 .btn_wrap .btn{
    position: relative;
    max-width: 390px;
    margin: 0 auto;
    padding: 2px 10px 17px 10px;
}
.reserve_wrap .btn_wrap .btn+.btn,
.reserve_wrap02 .btn_wrap .btn+.btn{ margin-top: 20px;}

.reserve_wrap .btn_wrap .btn span,
.reserve_wrap02 .btn_wrap .btn span{
    position: relative;
}
.reserve_wrap .btn_wrap .btn span:before,
.reserve_wrap02 .btn_wrap .btn span:before{
    position: relative;
    top: 7px;
    display: inline-block;
    margin-right: 15px;
    content: '';
    background-size: 100% auto !important;
    width: 27px;
    height: 27px;
}
.reserve_wrap .btn_wrap .btn.ico_appointment span:before,
.reserve_wrap02 .btn_wrap .btn.ico_appointment span:before{
    background: url("../img/pcr/ico_appointment.svg") no-repeat center center;
}
.reserve_wrap .btn_wrap .btn.ico_pcr_form span:before,
.reserve_wrap02 .btn_wrap .btn.ico_pcr_form span:before{
    background: url("../img/pcr/ico_pcr_form.svg") no-repeat center center;
}

@media screen and (max-width : 767px){
    .reserve_wrap{
        width: 100%;
        max-width: inherit;
        margin-top: 8%;
        margin-bottom: 12%;
        border-radius: 0;
        padding: 12% 0;
        box-sizing: border-box;
    }
    .reserve_wrap02{
        width: 100%;
        margin-top: 12%;
        margin-bottom: 12%;
        background: rgba(202,202,202,.22);
        padding: 12% 0;
        box-sizing: border-box;
    }
    .reserve_wrap .reserve_in{
        width: 92%;
        margin: 0 auto;
        padding: 12% 5%;
        background: #FFF;
        box-shadow: 5px 5px 10px -4px rgb(114 114 114 / 30%);
        border-radius: 13px;
        box-sizing: border-box;
    }
    .reserve_wrap02 .reserve_in{
        width: 92%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .reserve_wrap h2,
    .reserve_wrap02 h2{
        margin: 0 auto 8% auto;
    }
    .reserve_wrap h2:before {
        position: relative;
        top: 0;
        right: -3vw;
        display: block;
        margin: 0 auto 4% auto;
        background-size: 100% auto;
        width: 14vw;
        height: 20vw;
    }
    .reserve_wrap p{
        font-size: 3.733vw;
        font-weight: 400;
        line-height: 1.64;
    }

    .reserve_wrap .btn_wrap{
        margin: 6% auto 8% auto;
    }
    .reserve_wrap02 .btn_wrap{
        margin: 6% auto 0 auto;
    }
    .reserve_wrap .btn_wrap .btn,
    .reserve_wrap02 .btn_wrap .btn{
        max-width: inherit;
        margin: 0 auto;
        padding: 1vw 10px 4.7vw 10px;
        border-radius: 50px;
    }
    .reserve_wrap .btn_wrap .btn+.btn,
    .reserve_wrap02 .btn_wrap .btn+.btn{ margin-top: 4%;}

    .reserve_wrap .btn_wrap .btn span:before,
    .reserve_wrap02 .btn_wrap .btn span:before{
        top: 1.5vw;
        display: inline-block;
        margin-right: 15px;
        width: 7vw;
        height: 7vw;
    }

    .no-whitebox.reserve_wrap .reserve_in{
        background: none;
        box-shadow: none;
        padding: 0;
    }
/*    .no-whitebox.reserve_wrap h2:before,
    .no-whitebox.reserve_wrap p{ display: none;}*/
    .reserve_wrap p.atten{
        margin: 10px auto 0 auto;
        font-size: 3.733vw;
    }
}

/* ------------------------------
sec04
------------------------------ */
.sec04 .ttl:before {
    background: url(../img/pcr/ico-medical.svg) no-repeat center center;
    width: 54px;
    height: 54px;
}
.sec04 .img{
    margin-bottom: 100px;
}
.sec04 p{
    width: 100%;
    max-width: 786px;
    margin: 0 auto;
    font-size: 1.5rem;
}
.sec04 p.atten{
    max-width: 792px;
    font-size: 1.6rem;
    color: #c42629;
}
.sec04 .strong{ font-weight: 700;}

.sec04 h3{ margin-top: 45px; margin-bottom: 20px;}
.sec04 h3:before,
.sec04 h3:after{
    width: 29%;
}

@media screen and (max-width : 767px){
    .sec04 .ttl{ margin-bottom: 10%;}
    .sec04 .ttl:before {
        width: 16vw;
        height: 16vw;
    }
    .sec04 .img{
        margin-bottom: 5%;
    }
    .sec04 p{
        max-width: inherit;
        font-size: 3.733vw;
    }
    .sec04 p.atten{
        max-width: inherit;
        font-size: 3.733vw;
        line-height: 1.75;
    }

    .sec04 h3{
        text-align: left;
        margin-top: 8%;
        margin-bottom: 2%;
    }
    .sec04 h3 span{
        font-size: 4.267vw;
    }
    .sec04 h3:before,
    .sec04 h3:after{ display: none;}

}
/* ------------------------------
sec05
------------------------------ */
.sec05.inner{ margin-top: 96px;}

.sec05 .ttl{ margin-bottom: 46px;}
.sec05 .ttl:before {
    top: -5px;
    background: url(../img/pcr/ico-flow.svg) no-repeat center center;
    width: 59px;
    height: 59px;
}

.flow_box{
    position: relative;
    width: 100%;
    max-width: 800px;
    margin: 0 auto 100px;
    box-sizing: border-box;
}

.flow_box:not(.no-arrow):after{
    position: absolute;
    left: 0;
    right: 0;
    bottom: -60px;
    margin: 0 auto;
    display: block;
    content: '';
    background: url("../img/online/ico_arrow.svg") no-repeat center center;
    background-size: 100% auto;
    width: 60px;
    height: 28px;
    box-sizing: border-box;
}
.flow_box+.flow_box{ margin-top: 100px;}

.flow_box h3{
    position: relative;
    font-size: 2.2rem;
    font-weight: 500;
    letter-spacing: .1rem;
    color: #FFF;
    background: #001f4b;
    text-align: center;
    padding: 17px 25px 18px 25px;
    border-radius: 16px 16px 0 0;
    box-sizing: border-box;
}
.flow_box h3 span{
    position: absolute;
    left: 27px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2.2rem;
    letter-spacing: 0;
}
.flow_box .boxIn{
    border-radius: 0 0 16px 16px;
    padding: 20px 90px 25px 90px;
    background: rgba(153,165,183,.2);
    box-sizing: border-box;
}
.flow_box .boxIn .flex{
    display: flex;
    align-items: flex-start;
}
.flow_box .boxIn .flex.alignCenter{ align-items: center;}

.flow_box .boxIn .flex .img_wrap{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.flow_box .boxIn .flex .img +.img{ margin-left: 20px;}
.flow_box .boxIn .flex .img img{
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.flow_box .boxIn .flex .img img+img{ margin-top: 20px;}

.flow_box .boxIn .flex .txt{
    width: calc(100% - 94px);
    padding-left: 35px;
    box-sizing: border-box;
}
.flow_box .boxIn .flex .txt p{
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.01rem;
    line-height: 1.64;
    font-feature-settings: "palt";
}
.flow_box .boxIn .flex .txt .atten{
    margin-top: 3px;
    font-size: 1.5rem;
    color: #c42629;
}
.flow_box .boxIn .txt02{
    margin: 0 auto 20px;
    padding-left: 21%;
}
.flow_box .boxIn .txt02 h4{
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: .1rem;
    color: #001f4b;
    text-align: left;
    margin: 40px 0 10px;
}
.flow_box .boxIn a{
    color: #001f4b;
    text-decoration: underline;
}
.flow_box .boxIn a:hover{
    color: #c42629;
}
.flow_box .boxIn .txt02 h4:after{
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    content: '';
    width: 84%;
    height: 2px;
    background: #707070;
}
.flow_box ul li{
    line-height: 1.7;
}
.flow_box .boxIn .txt02 ul li span{
    font-size: 1.5rem;
    color: #001f4b;
    font-weight: bold;
    list-style: initial;
}
.flow_box .boxIn .txt02 li span02{
    font-size: 1.5rem;
    color: #333;
    font-weight: normal;
}

@media screen and (max-width : 767px){
    .sec05.inner{ margin-top: 10%;}

    .sec05 .ttl{ margin-bottom: 46px;}
    .sec05 .ttl:before {
        top: 0;
        background-size: 100% auto;
        width: 14vw;
        height: 14vw;
    }

    .flow_box {
        position: relative;
        width: 100%;
        margin: 0 auto 60px;
        box-sizing: border-box;
    }
    .flow_box:not(.no-arrow):after{
        bottom: -11vw;
        background-size: 100% auto;
        width: 8vw;
        height: 3.733vw;
    }
    .flow_box+.flow_box{ margin-top: 20%;}

    .flow_box h3{
        position: relative;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        text-align: left;
        font-size: 5.333vw;
        line-height: 1.35;
        padding: 15px 10px 13px 20px;
        border-radius: 10px 10px 0 0;
    }
    .flow_box h3 span{
        position: relative;
        left: 0;
        top: .7vw;
        transform: translateY(0);
        margin-right: 4%;
        font-size: 4.267vw;
    }
    .flow_box .boxIn{
        border-radius: 0 0 10px 10px;
        padding: 6% 6%;
    }
    .flow_box .boxIn .txt02{
        margin: 0 auto 20px;
        padding-left: 0;
    }
    .flow_box .boxIn .txt02 h4:after {
        position: absolute;
        top: 50%;
        right: 0;
        display: block;
        content: '';
        width: 74%;
        height: 2px;
        background: #707070;
    }
    .flow_box .boxIn .flex.alignCenter{ align-items: flex-start;}

    .flow_box .boxIn .flex .img_wrap{
        display: block;
        width: 25.2vw;
        max-width: 189px;
    }
    .flow_box .boxIn .flex .img +.img{ margin-left: 0;}

    .flow_box .boxIn .flex .img img+img{ margin-top: 4%;}

    .flow_box .boxIn .flex .txt{
        width: calc(100% - 25.2vw);
        padding-left: 8%;
    }
    .flow_box .boxIn .flex .txt p{
        font-size: 3.733vw;
        letter-spacing: .2rem;
    }
    .flow_box .boxIn .flex .txt .atten{
        margin-top: 8%;
        font-size: 3.733vw;
    }
    .sec05 .flow_box:nth-of-type(3) .boxIn .flex .txt .atten{
        margin-top: 17%;
    }

}
/* ------------------------------
sec06
------------------------------ */
.sec06.inner{ margin-top: 96px;}

.sec06 .ttl{ margin-bottom: 46px;}
.sec06 .ttl:before {
    top: -5px;
    background: url(../img/pcr/ico_mail_flow.svg) no-repeat center center;
    width: 62px;
    height: 60px;
    margin-right: 15px;
}
.flow_box .sub_ttl{
    position: relative;
    margin: 20px 0 10px 0;
    font-size: 1.5rem;
    font-weight: 700;
    color: #c42629;
}
.flow_box .sub_ttl:after{
    position: absolute;
    right: 0;
    top: 50%;
    display: block;
    content: '';
    width: 85%;
    height: 1px;
    background: #333333;
}
.notice_flow{
    margin-top: 30px;
    margin-bottom: 35px;
}
.notice_flow li{
    position: relative;
    width: 100%;
    max-width: 366px;
    margin: 0 auto;
    text-align: center;
    color: #c42629;
    font-size: 1.5rem;
    font-weight: 600;
    background: rgba(196,38,41,.1);
    border: 2px solid #c42629;
    padding: 6px 5px;
    border-radius: 10px;
    box-sizing: border-box;
}
.notice_flow li+li{ margin-top: 40px;}
.notice_flow li:not(:last-of-type):after{
    position: absolute;
    left: 0;
    right: 0;
    bottom: -30px;
    margin: 0 auto;
    display: block;
    content: '';
    background: url("../img/pcr/ico_arrow_red.svg") no-repeat center center;
    background-size: 100% auto;
    width: 18px;
    height: 14px;
    box-sizing: border-box;
}
.sec06 .atten02{
    width: 100%;
    max-width: 800px;
    margin: 30px auto 0 auto;
    color: #c42629;
    font-size: 1.5rem;
    font-weight: 500;
}
.sec06 .atten02+.atten02{ margin-top: 0;}

@media screen and (max-width : 767px){
    .sec06.inner{ margin-top: 8%;}

    .sec06 .ttl{ margin-bottom: 8%;}
    .sec06 .ttl:before {
        top: 0;
        background-size: 100% auto;
        width: 15vw;
        height: 15vw;
        margin: 0 auto 3% auto;
    }
    .sec06 .flow_box:nth-of-type(1) .boxIn .flex.alignCenter{ align-items: center;}
    .flow_box .sub_ttl{
        margin: 8% 0 10px 0;
        font-size: 4.267vw;
    }
    .flow_box .sub_ttl:after{
        width: 77%;
    }
    .notice_flow{
        margin-top: 30px;
        margin-bottom: 35px;
    }
    .notice_flow li{
        width: 100%;
        max-width: inherit;
        text-align: center;
        font-size: 3.733vw;
        padding: 6px 5px;
        border-radius: 10px;
    }
    .notice_flow li+li{ margin-top: 40px;}

    .sec06 .atten02{
        max-width: inherit;
        margin: 5% auto 0 auto;
        font-size: 3.733vw;
    }
    .sec06 .atten02+.atten02{ margin-top: 0;}

}

/* ------------------------------
sec07
------------------------------ */
.sec07{
    margin-top: 65px;
    padding-bottom: 55px;
}
.sec07.inner{
    max-width: 800px;
}
.sec07 h2:before, .sec07 h2:after{
    width: 39%;
}

.sec07 .check_list{
    width: 100%;
    max-width: 774px;
    margin: 0 auto;
}
.sec07 .check_list li{
    position: relative;
    font-size: 1.5rem;
    line-height: 1.75;
    font-weight: 600;
    color: #001f4b;
    padding-left: 26px;
    box-sizing: border-box;
}

.sec07 .check_list li+li{ margin-top: 20px;}
.sec07 .check_list li:before{
    position: absolute;
    left: 0;
    top: 8px;
    display: block;
    content: '';
    background: url("../img/online/ico_check.svg") no-repeat center center;
    background-size: 100% auto;
    width: 16px;
    height: 14px;
}
.sec07 .check_list li .col{ color: #c42629;}

.reserve_wrap.no-whitebox{ margin-bottom: 60px;}

@media screen and (max-width : 767px){
    .sec07{
        padding-bottom: 6%;
        margin-top: 10%;
    }
    .sec07 h2:before, .sec07 h2:after{
        width: 16% !important;
    }

    .sec07 .check_list{
        width: 90%;
        max-width: inherit;
    }
    .sec07 .check_list li{
        font-size: 3.733vw;
        padding-left: 6vw;
    }

    .sec07 .check_list li+li{ margin-top: 4%;}
    .sec07 .check_list li:before{
        top: 1.2vw;
        width: 4vw;
        height: 4vw;
    }
    .reserve_wrap.no-whitebox{ margin-bottom: 12%;}

}
/* ------------------------------
sec08
------------------------------ */
.sec08.inner{
    margin-top: 106px;
    padding-bottom: 174px;
}
.sec08 .ttl:before {
    top: -5px;
    background: url(../img/pcr/ico-table.svg) no-repeat center center;
    width: 59px;
    height: 59px;
    margin-right: 15px;
}

.tbl_style{
    width: 100%;
    max-width: 800px;
    margin: 0 auto 34px auto;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
    box-sizing: border-box;
}
.tbl_style th,
.tbl_style td{
    font-size: 1.5rem;
    line-height: 1.4;
    letter-spacing: .1rem;
    font-weight: 600;
    border: 1px solid #001f4b;
    padding: 13px 10px;
    vertical-align: middle;
    box-sizing: border-box;
}

.tbl_style thead th{
    font-size: 1.4rem;
    font-weight: 700;
}

.tbl_style tbody th{
    color: #FFF;
    background: #667993;
}

.tbl_style thead th.bgCol01{
    text-align: center;
    color: #FFF;
    font-size: 1.6rem;
    background: #001f4b;
    border: 1px solid #001f4b;
}
.tbl_style thead th.bgCol02{
    text-align: center;
    color: #FFF;
    font-size: 1.6rem;
    background: #c42629;
    border: 1px solid #c42629;
}
.tbl_style thead th.visit{
    color: #001f4b;
    background: #e5e8ed;
}
.tbl_style thead th.post{
    color: #c42629;
    background: #f9e9e9;
}
.tbl_style .small{
    position: relative;
    left: -6px;
    margin-top: 3px;
    display: block;
    font-size: 1.2rem;
}
.tbl_style .small.inline{
    display: inline;
    margin-top: 0;
}
.tbl_style .noBorder{ border: none !important;}
.tbl_style .none{
    display: block;
    margin: 0 auto;
    width: 42px;
    height: 1px;
    background: #001f4b;
}
.tbl_note{
    width: 100%;
    max-width: 800px;
    font-size: 1.6rem;
    margin: 0 auto;
}

@media screen and (max-width : 767px){
    .sec08.inner{
        margin-top: 16%;
        padding-bottom: 14%;
    }
    .sec08 .ttl:before {
        top: 0;
        background-size: 100% auto;
        width: 14vw;
        height: 14vw;
        margin: 0 auto 8% auto;
    }

    .tbl_style{
        width: 100%;
        max-width: inherit;
        margin: 0 auto 5% auto;
    }
    .tbl_style th,
    .tbl_style td{
        font-size: 2vw;
        letter-spacing: -.05rem;
        padding: 4px 4px 5px 4px;
    }
    .tbl_style thead th:nth-of-type(1){ width: 16.5vw;}
    .tbl_style thead th{
        font-size: 2.133vw;
    }
    .tbl_style tbody th{
        font-size: 1.733vw;
        font-weight: 500;
    }
    .tbl_style thead th.bgCol01{
        font-size: 2.667vw;
    }
    .tbl_style thead th.bgCol02{
        font-size: 2.667vw;
    }

    .tbl_style .small{
        left: 0;
        text-indent: -1.6vw;
        margin-top: 3px;
        font-size: 1.733vw;
    }
    .tbl_style .none{
        width: 7vw;
    }
    .tbl_note{
        max-width: inherit;
        font-size: 3.733vw;
        margin: 0 auto;
        line-height: 1.65;
    }
}

.reserve_wrap .tel_wrap{
    width: 100%;
    max-width: 390px;
    margin: 15px auto 0 auto;
    background: #c42629;
    padding: 11px 10px 17px 10px;
    border-radius: 10px;
    box-sizing: border-box;
}
.reserve_wrap .tel_wrap p{
    text-align: center;
    color: #FFF;
}
.reserve_wrap .tel_wrap p.tel{
    font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: .2rem;
}
.reserve_wrap .tel_wrap p.tel span{ position: relative;}
.reserve_wrap .tel_wrap p.tel span:before{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-right: 13px;
    content: '';
    background: url("../img/common/ico-tel_white.svg") no-repeat center center;
    background-size: 100% auto;
    width: 20px;
    height: 20px;
}
.reserve_wrap .tel_wrap p.tel-txt{
    font-size: 1.4rem;
    font-weight: 500;
}

@media screen and (max-width : 767px){
    .reserve_wrap .tel_wrap{
        width: 100%;
        max-width: inherit;
        padding: 0;
        border-radius: 50px;
    }
    .reserve_wrap .tel_wrap p.tel a{
        display: block;
        padding: 2.7vw 10px 3.0vw 10px;
        border-radius: 50px;
        background: #c42629;
    }
    .reserve_wrap .tel_wrap p.tel,
    .reserve_wrap .tel_wrap p.tel a{
        font-size: 4.533vw;
        letter-spacing: .2rem;
        color: #FFF;
        padding: 2.5vw 10px;
    }
    .reserve_wrap .tel_wrap p.tel span:before{
        margin-right: 13px;
        width: 20px;
        height: 20px;
    }
    .reserve_wrap .tel_wrap p.tel-txt{
        display: none;
    }
    .reserve_wrap .tel_wrap p.tel span{ position: relative;}
    .reserve_wrap .tel_wrap p.tel span:before{
        position: relative;
        display: inline-block;
        vertical-align: middle;
        margin-right: 13px;
        content: '';
        background: url("../img/common/ico-tel_white.svg") no-repeat center center;
        background-size: 100% auto;
        width: 20px;
        height: 20px;
        margin-bottom: 4px;
    }
}

.btn_wrap.page-link{
    width: 100%;
    max-width: 480px;
    margin: 75px auto 0 auto;
}
.btn_wrap.page-link .btn{
    background: #c42629;
    font-size: 2.4rem;
    border-radius: 12px;
    padding: 28px 30px;
    text-align: left;
    box-sizing: border-box;
}
.btn_wrap.page-link .btn+.btn{ margin-top: 30px;}

@media screen and (max-width : 767px){
    .btn_wrap.page-link{
        width: 92%;
        max-width: inherit;
        margin: 12% auto 0 auto;
    }
    .btn_wrap.page-link .btn{
        padding: 7% 7%;
        font-size: 4.267vw;
        box-sizing: border-box;
    }
    .btn_wrap.page-link .btn+.btn{ margin-top: 4%;}
}

.box_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 75px;
}

.guide_wrap {
    margin: 65px auto 0 auto;
}
.guide_wrap h2{
    position: relative;
    text-align: center;
    margin-bottom: 30px;
}
.guide_wrap h2:before,
.guide_wrap h2:after{
    position: absolute;
    top: 50%;
    display: block;
    content: '';
    width: 43%;
    height: 1px;
    background: #001f4b;
}

.guide_wrap h2:before{ left: 0;}
.guide_wrap h2:after{ right: 0;}

.guide_wrap h2 span{
    font-size: 2.4rem;
    font-weight: 700;
    color: #001f4b;
}
.guide_wrap .flex-box{
    display: flex;
    justify-content: space-between;
}
.guide_wrap .flex-box.time_box{
    margin-bottom: 90px;

}
.guide_wrap .flex-box.time_box .box{
    position: relative;
    width: 48%;
    max-width: 480px;
}
.guide_wrap .flex-box.time_box .box img{
    width: 100%;
    height: auto;
}
.guide_wrap .flex-box.time_box .box .note{
    font-size: 1.6rem;
    margin-top: 5px;
}
.guide_wrap .flex-box.map_box{
    align-items: center;
    flex-direction: row-reverse;
}
.guide_wrap .flex-box.map_box .box{
    width: 34%;
}
.guide_wrap .flex-box.map_box .box:nth-of-type(1){
    width: 60%;
    max-width: 570px;
}
.guide_wrap .flex-box.map_box .lead{
    position: relative;
    font-size: 2.1rem;
    font-weight: 500;
    color: #001f4b;
    border-bottom: 1px solid #001f4b;
    margin-bottom: 20px;
    box-sizing: border-box;
}
.guide_wrap .flex-box.map_box .lead:before{
    position: relative;
    top: -15px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px;
    content: '';
    background: url("../img/index/ico_walk.svg") no-repeat center;
    background-size: 100% auto;
    width: 27px;
    height: 52px;
}
.guide_wrap .flex-box.map_box .info{
    font-size: 1.5rem;
    line-height: 1.86;
    letter-spacing: .1rem;
}
.guide_wrap .flex-box.map_box .gmap{
    max-width: 570px;
    height: 424px;
}
.guide_wrap .flex-box.map_box .gmap iframe{
    width: 100%;
    height: 100%;
    border: none;
    box-sizing: border-box;
}
.guide_wrap .flex-box.map_box .btn_wrap{
    margin: 40px 0 0 0;
}


.sec07 h2:before, .sec07 h2:after{
    width: 35%;
}

.sec07 .check_list{
    width: 100%;
    max-width: 774px;
    margin: 0 auto;
}
.sec07 .check_list li{
    position: relative;
    font-size: 1.5rem;
    line-height: 1.75;
    font-weight: 600;
    color: #001f4b;
    padding-left: 26px;
    box-sizing: border-box;
}

@media screen and (max-width : 767px){
    .guide_wrap h2{
        margin-bottom: 4%;
    }
    .guide_wrap h2:before,
    .guide_wrap h2:after{
        width: 33%;
    }

    .guide_wrap h2 span{
        font-size: 5.333vw;
        line-height: 1.5;
    }
    .guide_wrap .flex-box.map_box {
        display: flex;
        flex-direction: column-reverse;
    }
    .guide_wrap .flex-box.map_box .box{
        width: 100%;
        text-align: center;
        padding-bottom: 8%;
    }
    .guide_wrap .flex-box.map_box .box:nth-of-type(1){
        width: 100%;
        max-width: inherit;
        text-align: left;
    }
    .guide_wrap .flex-box.map_box .box:nth-of-type(2){
        display: flex;
        flex-direction: column-reverse;
    }
    .guide_wrap .flex-box.map_box .gmap{
        width: 100%;
        height: 100vw;
    }
    .guide_wrap .flex-box.map_box .lead{
        display: inline-block;
        text-align: center;
        margin: 0 auto;
        font-size: 4.267vw;
        border-bottom: 1px solid #001f4b;
        margin-top: 7%;
        margin-bottom: 2%;
    }
    .guide_wrap .flex-box.map_box .lead:before{
        top: -15px;
        width: 6vw;
        height: 13vw;
    }
}

/* ------------------------------
antigen_test
antibody_test
------------------------------ */
.antigen_test{
    padding-top: 65px;
}
.antibody_test{
    margin-top: 110px;
    padding-bottom: 50px;
}
.antigen_test h2,
.antibody_test h2{
    position: relative;
    text-align: center;
    margin-bottom: 36px;
}
.antigen_test h2:before,
.antigen_test h2:after,
.antibody_test h2:before,
.antibody_test h2:after{
    position: absolute;
    top: 50%;
    display: block;
    content: '';
    width: 38%;
    height: 1px;
    background: #001f4b;
}

.antigen_test h2:before,
.antibody_test h2:before{ left: 0;}
.antigen_test h2:after,
.antibody_test h2:after{ right: 0;}
.antigen_test h2 span,
.antibody_test h2 span{
    font-size: 2.4rem;
    font-weight: 700;
    color: #001f4b;
}

.antigen_test .check_list,
.antibody_test .check_list{
    width: 100%;
    max-width: 774px;
    margin: 0 auto 40px auto;
}
.antigen_test .check_list li,
.antibody_test .check_list li{
    position: relative;
    font-size: 1.5rem;
    line-height: 1.75;
    font-weight: 600;
    color: #001f4b;
    padding-left: 26px;
    box-sizing: border-box;
}
.antigen_test .check_list li+li,
.antibody_test .check_list li+li{ margin-top: 20px;}
.antigen_test .check_list li:before,
.antibody_test .check_list li:before{
    position: absolute;
    left: 0;
    top: 8px;
    display: block;
    content: '';
    background: url("../img/online/ico_check.svg") no-repeat center center;
    background-size: 100% auto;
    width: 16px;
    height: 14px;
}
.antigen_test .check_list li .col,
.antibody_test .check_list li .col{ color: #c42629;}

.antibody_test .check_list li a{
    font-size: 1.5rem;
    line-height: 1.75;
    font-weight: 600;
    color: #001f4b;
}
.antibody_test .check_list li a:hover{ text-decoration: underline;}

.ttl.ico-fee:before{
    background: url(../img/pcr/ico-fee.svg) no-repeat center center;
    width: 48px;
    height: 55px;
}

.fee_wrap{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 10px;
    border-bottom: 1px solid #061f4b;
    box-sizing: border-box;
}
.antibody_test .fee_wrap{ max-width: 270px;}
.fee_wrap p{
    font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: .15rem;
    color: #061f4b;
}
.fee_wrap .small{
    font-size: 1.4rem;
    font-weight: 500;
}
.antibody_test .tbl.pc{ display: table !important;}
.antibody_test .tbl.sp{ display: none !important;}
.antibody_test .tbl{
    width: 100%;
    border-collapse: separate;
    border-spacing: 7px;
    box-sizing: border-box;
}
.antibody_test .tbl th,
.antibody_test .tbl td{
    line-height: calc(25 / 20);
    text-align: center;
    letter-spacing: .025rem;
    vertical-align: middle;
    padding: 18px 10px;
    box-shadow: 3px 3px 4px 0 rgba(114,114,114,.3);
    box-sizing: border-box;
}

.antibody_test .tbl th{
    font-size: 2.0rem;
    font-weight: 700;
    text-align: left;
    color: #FFF;
    background: #061f4b;
    padding: 18px 27px;
    border-radius: 15px 0 0 0;
}
.antibody_test .tbl tr:nth-of-type(2) th{ border-radius: 0 0 0 15px;}

.antibody_test .tbl td{
    font-size: 1.8rem;
    font-weight: 500;
    color: #001f4b;
}
.antibody_test .tbl tr:nth-of-type(2) td{
    font-size: 2.0rem;
    font-weight: 700;
}
.antibody_test .tbl td:last-of-type{ border-radius: 0 15px 0 0;}
.antibody_test .tbl tr:nth-of-type(2) td:last-of-type{ border-radius: 0 0 15px 0;}

.antibody_test .tbl .bgCol01{ background: #eff1f3;}
.antibody_test .tbl .bgCol02{ background: #bfc7d2;}

.antibody_test .tbl_note{
    max-width: inherit;
    margin-left: 10px;
    margin-bottom: 45px;
    font-size: 1.6rem;
    font-weight: 500;
}
.antibody_test .txt{
    text-align: center;
    font-size: 1.5rem;
    font-weight: 600;
    color: #001f4b;
    margin-bottom: 30px;
}
@media screen and (max-width : 767px){
    .antigen_test{
        padding-top: 4%;
    }
    .antibody_test{
        margin-top: 20%;
        padding-bottom: 20%;
    }
    .antigen_test h2,
    .antibody_test h2{
        margin-bottom: 8%;
    }
    .antigen_test h2:before,
    .antigen_test h2:after,
    .antibody_test h2:before,
    .antibody_test h2:after{
        width: 20%;
    }
    .antigen_test h2 span,
    .antibody_test h2 span{
        font-size: 5.867vw;
    }
    .ttl.ico-fee:before{
        background-size: 100% auto;
        width: 11vw;
        height: 13vw;
    }
    .fee_wrap{
        position: relative;
        width: 84%;
        max-width: inherit;
        padding-bottom: 10px;
        border-bottom: none;
    }
    .fee_wrap:after{
        position: absolute;
        left: 0;
        bottom: 6px;
        display: block;
        content: '';
        width: 100%;
        height: 1px;
        background: #061f4b;
    }
    .antibody_test .fee_wrap{ width: 50%; max-width: inherit;}
    .fee_wrap p{
        position: relative;
        font-size: 4.8vw;
    }
    .fee_wrap .small{
        display: block;
        position: absolute;
        left: -15vw;
        right: 0;
        margin: 0 auto;
        text-align: center;
        bottom: -8vw;
        font-size: 2.3vw;
        white-space: nowrap;
        letter-spacing: 0;
    }
    .fee_wrap p:nth-of-type(2) .small{
        left: -16vw;
        font-size: 2.3vw;
    }

    .antibody_test .tbl{
        width: 100%;
        border-collapse: separate;
        border-spacing: 7px;
        box-sizing: border-box;
    }
    .antibody_test .tbl th,
    .antibody_test .tbl td{
        padding: 18px 7%;
    }
    .antibody_test .tbl.pc{ display: none !important;}
    .antibody_test .tbl.sp{ display: table !important;}
    .antibody_test .tbl th{
        font-size: 3.733vw;
        text-align: center;
        padding: 18px 27px;
        border-radius: 15px 0 0 0;
    }
    .antibody_test .tbl th:nth-of-type(2) { border-radius: 0 15px 0 0;}

    .antibody_test .tbl td:last-of-type,
    .antibody_test .tbl tr:nth-of-type(2) td:last-of-type{border-radius: 0;}

    .antibody_test .tbl td,
    .antibody_test .tbl tr:nth-of-type(2) td{
        font-size: 3.733vw;
        font-weight: 500;
    }
    .antibody_test .tbl td:nth-of-type(2){
        font-size: 3.733vw;
        font-weight: 500;
        text-align: right;
    }
    .antibody_test .tbl tr:last-of-type td:nth-of-type(1){ border-radius: 0 15px 0 0;}
    .antibody_test .tbl tr:last-of-type td:nth-of-type(2){ border-radius: 0 0 15px 0;}

    .antibody_test .tbl_note{
        margin-left: 10px;
        margin-bottom: 45px;
        font-size: 3.2vw;
    }
    .antibody_test .txt{
      font-size: 3.2vw;
      margin-bottom: 8vw;
    }
}







