@charset "UTF-8";
body {
    font-family: 'Noto Sans JP', sans-serif;
    color:#333;
    font-weight: 500;
    line-height:1.6;
    font-size: 1.6rem;
    background: #F2F5FA;
}
html {
  scrollbar-gutter: stable;
}
html:has(dialog:modal) {
  overflow: hidden;
}

main{
    padding: 5% 4% 5% 27%;
}
@media screen and (max-width: 768px){
    main{
        padding: 40px 0 70px;
    }

}
@media screen and (max-width: 580px){
    body {
        font-size: 3.5vw;
    }
}
h1,h2,h3,h4,h5,h6{
    /* font-size:2.4rem; */
}



/*========================================
全体
=========================================*/
.sect-inner{
    width: 90%;
    max-width: 1200px;
    margin:0 auto;
    box-sizing:border-box;
}

.page-ttl-area h2{
    font-size: 2.1vw;
    font-weight:bold;
    color:#223360;
    margin: 0 0 2.5vw;
    display: flex;
    justify-content: space-between;
}
.page-ttl-area h2 figure{
    width: 45%;
    text-align:right;
    display: flex;
    justify-content: right;
}
.page-ttl-area h2 figure img{
    display:block;
    height: 4.2vw;
    width: fit-content;
}
.page-ttl-area p,
.cont-box dd p{
    font-size: 0.8vw;
    margin: 0 0 2.5vw;
    line-height: 1.8;
}
.cont-box dd p{
    margin:1% 0;
}
.page-ttl-area p a,
.cont-box dd a{
    color:#3471EB;
    text-decoration:underline;
}
.cont-box{
    margin:0 0 4%;
}
.ttl-flex{
    display:flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 1%;
}
.ttl-flex h3{
    font-size: 1vw;
    display:flex;
    align-items:center;
    width: 100%;
}
.ttl-flex h3:before{
    content:"";
    display:inline-block;
    width:1.3vw;
    height:1.3vw;
    background: url(https://estpartner.jp/images/bp-mypage/icon-mypage-ttl-maru.svg)no-repeat;
    background-size:contain;
    margin: 0 5px 0 0;
}
.ttl-flex .btn-cont{
    margin:0 auto 0 0;
    display: flex;
    justify-content: right;
}
.ttl-flex .btn-cont input{
    border:none;
    background:#6281d9;
    color:#fff;
    padding: 4% 13%;
    box-sizing:border-box;
    margin: 0 auto 0 0;
    border-radius: 0.3vw;
    box-shadow: 0 1px 10px 0px rgba(0, 0, 0, 0.1);
    font-size: 0.8vw;
}
.ttl-note,
.errors{
    font-size:0.8vw;
}
@media screen and (max-width:768px){
 .page-ttl-area{
    width:90%;
     margin:0 auto;
}
.page-ttl-area h2{
    font-size: 20px;
    font-weight:bold;
    color:#223360;
    margin: 0 0 20px;
}
.page-ttl-area h2 figure{
    width: 45%;
    text-align:right;
    display: flex;
    justify-content: right;
}
.page-ttl-area h2 figure img{
    height: auto;
    max-height:45px;
    width: fit-content;
}
    
.page-ttl-area p,
.cont-box dd p{
    font-size: 13px;
    margin: 0 0 20px;
    line-height: 1.8;
}
.cont-inner{
    width:90%;
    margin:0 auto;
}

.cont-box{
    margin: 0 auto 50px;
    width: 100%;
}
.ttl-flex{
    display:flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 1%;
}
.ttl-flex h3{
    font-size: 15px;
    display:flex;
    align-items:center;
    width: 100%;
}
.ttl-flex h3:before{
    content:"";
    display:inline-block;
    width: 20px;
    height: 20px;
    background: url(https://estpartner.jp/images/bp-mypage/icon-mypage-ttl-maru.svg)no-repeat;
    background-size:contain;
    margin: 0 4px 0 0;
}
.ttl-flex .btn-cont{
    margin:0 auto 0 0;
    display: flex;
    justify-content: right;
}
.ttl-flex .btn-cont input{
    border:none;
    background:#6281d9;
    color:#fff;
    padding: 5px 15px 5px;
    box-sizing:border-box;
    margin: 0 auto 0 0;
    border-radius: 5px;
    box-shadow: 0 1px 10px 0px rgba(0, 0, 0, 0.1);
    font-size: 11px;
}

.ttl-note,
.errors {
    font-size: 12px;
}

}

@media screen and (max-width:580px){
    .page-ttl-area h2{
        display:block;
    }

    .page-ttl-area h2 figure{
        width: 100%;
        text-align: center;
        display: flex;
        justify-content: center;
        margin: 30px 0 0;
    }
    .page-ttl-area h2 figure img{
        height: fit-content;
        max-height: 58px;
        width: inherit;
    }
    .ttl-flex.bank{
        display: block;
    }
    .ttl-flex.bank .btn-cont input{
        border:none;
        background:#6281d9;
        color:#fff;
        padding: 10px 10%;
        box-sizing:border-box;
        margin: 10px auto 0;
        border-radius: 5px;
        box-shadow: 0 1px 10px 0px rgba(0, 0, 0, 0.1);
        font-size: 16px;
    }

}
/*========================================
header
=========================================*/
.dw-header-inner {
    max-width: 1300px;
    margin: 0 auto;
    width: 100%;
    background: #fff;
    z-index: 102;
}
.ttl-bp-mypage{
    text-align:center;
    color:#223360;
    margin: 10% 0 5%;
    line-height: 2vw;
}
.ttl-bp-mypage span{
    display:block;
    font-size: 1vw;
}
.ttl-bp-mypage b{
    font-size: 1.2vw;
}
.ttl-bp-mypage img{
    display:none;
}

.sp-btm-fix{
    display:none;
}

.h-agency{
    background:#F5F7FC;
    width:85%;
    margin: 0 auto;
    border-radius:0.3vw;
    padding:3% 5%;
    display:flex;
    flex-wrap:wrap;
    align-items: center;
}
.h-agency figure{
    width:10%;
    margin: 0 3% 0 0;
}
.h-agency dl{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    width: 87%;
    margin:0;
}
.h-agency dl dd{
    width:100%;
    margin:0;
    font-size: 0.8vw;
}
.h-agency dl dd span{
    font-size: 0.7vw;
    margin: 0 1% 0 0;
}
.h-agency dl dd:nth-child(2) {
    display:flex;
    justify-content:space-between;
    align-items: center;
    color: #71767C;
    flex-wrap: wrap;
}
.h-agency dl dd:nth-child(2) p{
    width:60%;
}
.h-agency dl dd:nth-child(2) a{
    display:block;
    background:#6281d9;
    color:#fff;
    padding:0.3% 4%;
    border-radius:0.3vw;
    font-size: 0.8vw;
}
.h-agency dl dd:nth-child(2) a{
    display:block;
    background:#6281d9;
    color:#fff;
    padding: 0.3% 4% 0.6%;
    border-radius: 0.2vw;
    font-size: 0.7vw;
}
.h-agency dl dd:nth-child(2) a:hover{
    background:#3a62cf;
    opacity:1;
}
.h-agency dl dd:nth-child(2) a b{
    font-size: 1.2vw;
}

.h-menu{
    width:85%;
    margin: 10% auto;
}
.h-menu ul li{
    margin: 6% 0;
}
.h-menu ul li a{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    font-size: 0.8vw;
    position:relative;
}
.h-menu ul li a:after{
    content:"";
    display:inline-block;
    width: 0.9vw;
    height: 0.9vw;
    background: url(https://estpartner.jp/images/bp-mypage/icon-mypage-arrow-right-gray.svg)no-repeat;
    background-size:contain;
    position:absolute;
    right: 0;
    top:50%;
    transform:translateY(-50%);
    transition: all 0.2s ease-out;
}
.h-menu ul li a:hover:after{
    right: -2%;
}
.h-menu ul li a img{
    width: 8%;
    margin: 0 2% 0 0;
}

.f-box{
    position: absolute;
    bottom: 0;
    background: #F5F7FC;
    width: 100%;
    padding: 5% 7.5%;
}
.f-menu{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.f-menu li{
    width: 49%;
    margin: 1% 0;
}
.f-menu li a{
   background:#E6E9F2;
   border-radius:0.3vw;
   padding: 2% 6% 3.5%;
   display: flex;
   justify-content: space-between;
   font-size: 0.75vw;
   align-items: center;
   position: relative;
}
.f-menu li a:hover{
   background:#d7dcea;
    opacity:1;
}
.f-menu li a:after{
   content:"";
   display:inline-block;
   background:url(https://estpartner.jp/images/bp-mypage/icon-mypage-gaibu-blue.svg)no-repeat;
   background-size:contain;
   width: 0.8vw;
   height: 0.8vw;
   position: absolute;
   right: 5%;
}
.f-bp-contact{
    margin:5% 0;
}
.f-bp-contact li{
    margin: 1% 0;
}
.f-bp-contact li p{
    display:flex;
    flex-wrap:wrap;
    font-size: 0.8vw;
    align-items: center;
}
.f-bp-contact li p a + span{
    color:#808183;
    margin: 0 0 0 3%;
    font-size: 0.7vw;
}
.f-bp-contact li p img{
    width: 6%;
    margin: 0 2% 0 0;
}
.f-copyright{
    text-align: center;
    font-size: 0.7vw;
    color: #A6ADBF;
}
@media screen and (max-width: 768px){
    .dw-header-inner {
        width: 100%;
        overflow: unset;
        height: auto;
    }

    .ttl-bp-mypage{
        text-align:center;
        color:#223360;
        margin: 0;
    }
    .ttl-bp-mypage a{
        display:flex;
        align-items:center;
        justify-content:center;
    }
    .ttl-bp-mypage span{
        display: none;
        font-size: 1vw;
    }
    .ttl-bp-mypage b{
        font-size: 14px;
    }
    .ttl-bp-mypage img{
        display: block;
        max-width: 70px;
        margin: 0 20px 0 0;
    }
    .sp-btm-fix{
        display: flex;
        position: fixed;
        bottom: 0;
        flex-wrap: wrap;
        width: 100%;
        background: #314062;
        z-index: 103;
    }
    .sp-btm-fix li{
        width:33.333%;
        background: #314062;
    }
    .sp-btm-fix li a{
        display:block;
        background:#314062;
        color:#fff;
        width:100%;
        text-align: center;
        padding: 10px;
        box-sizing: border-box;
        font-size: 13px;
    }
    .sp-btm-fix li a img{
        display:block;
        width: 30px;
        margin: 0 auto;
    }


        
    .h-agency{
        background:#F5F7FC;
        width: 100%;
        margin: 0 auto;
        border-radius: 0;
        padding: 15px 5%;
        display:flex;
        flex-wrap:wrap;
        align-items: center;
    }
    .h-agency figure{
        width: 25px;
        margin: 0 3% 0 0;
    }
    .h-agency dl{
        display:flex;
        justify-content:space-between;
        flex-wrap:wrap;
        width: 87%;
        margin:0;
    }
    .h-agency dl dd{
        width:100%;
        margin:0;
        font-size: 12px;
    }
    .h-agency dl dd span{
        font-size: 11px;
    }
    .h-agency dl dd:nth-child(2) {
        display:flex;
        justify-content:space-between;
        align-items: center;
        color: #71767C;
        flex-wrap: wrap;
    }
    .h-agency dl dd:nth-child(2) p{
        width:60%;
    }
    .h-agency dl dd:nth-child(2) a{
        display:block;
        background:#6281d9;
        color:#fff;
        padding:0.3% 4%;
        border-radius:0.3vw;
        font-size: 0.8vw;
    }
    .h-agency dl dd:nth-child(2) a{
        display:block;
        background:#6281d9;
        color:#fff;
        padding: 1px 10px;
        border-radius: 5px;
        font-size: 11px;
    }
    .h-agency dl dd:nth-child(2) a b{
        font-size: 1.2vw;
    }
    
    .h-menu{
        width: 90%;
        margin: 10% auto;
    }
    .h-menu ul li{
        margin: 20px 0;
    }
    .h-menu ul li a{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        font-size: 12px;
    }
    .h-menu ul li a img{
        width: 20px;
        margin: 0 10px 0 0;
    }

    .h-menu ul li a:after{
        content:"";
        display:inline-block;
        width: 12px;
        height: 12px;
        transition:unset;
    }
    .f-box{
        position: unset;
        bottom: 83px;
        background: #F5F7FC;
        width: 100%;
        padding: 5% 7.5%;
    }
    .f-menu{
        display: block;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .f-menu li{
        width: 100%;
        margin: 10px 0;
    }
    .f-menu li a{
       background:#E6E9F2;
       border-radius: 5px;
       padding: 5px 10px;
       display: flex;
       justify-content: space-between;
       font-size: 12px;
       align-items: center;
       position: relative;
    }
    .f-menu li a:after{
       content:"";
       display:inline-block;
       background:url(https://estpartner.jp/images/bp-mypage/icon-mypage-gaibu-blue.svg)no-repeat;
       background-size:contain;
       width: 15px;
       height: 15px;
       position: absolute;
       right: 3%;
    }
    .f-bp-contact{
        margin: 15px 0;
    }
    .f-bp-contact li{
        margin: 5px 0;
    }
    .f-bp-contact li p{
        display:flex;
        flex-wrap:wrap;
        font-size: 12px;
        align-items: center;
    }
    .f-bp-contact li p a + span{
        color:#808183;
        margin: 0 0 0 5px;
        font-size: 11px;
    }
    .f-bp-contact li p img{
        width: 16px;
        margin: 0 2% 0 0;
    }
    .f-copyright{
        text-align: center;
        font-size: 11px;
        color: #A6ADBF;
    }
}

@media screen and (max-width: 580px){
    .dw-header-inner {
        /* height: 65px; */
    }

    .ttl-bp-mypage{
        text-align:center;
        /* color:#223360; */
        /* margin: 0 0 5%; */
    }
    .ttl-bp-mypage span{
        font-size: 1vw;
    }
    .ttl-bp-mypage b{
        font-size: 12px;
    }
    .ttl-bp-mypage img{
        display: block;
        margin: 0 15px 0 0;
    }
    .sp-btm-fix{
        display: flex;
        position: fixed;
        bottom: 0;
        flex-wrap: wrap;
        width: 100%;
        background: #314062;
        z-index: 103;
    }
    .sp-btm-fix li{
        width:33.333%;
        background: #314062;
    }
    .sp-btm-fix li a{
        display:block;
        background:#314062;
        color:#fff;
        width:100%;
        text-align: center;
        padding: 5px 10px;
        box-sizing: border-box;
        font-size: 10px;
    }
    .sp-btm-fix li a img{
        display:block;
        width: 25px;
        margin: 0 auto;
    }


        
    .h-agency{
        background:#F5F7FC;
        width: 100%;
        margin: 0 auto;
        border-radius: 0;
        padding: 15px 5%;
        display:flex;
        flex-wrap:wrap;
        align-items: center;
    }
    .h-agency figure{
        width: 25px;
        margin: 0 3% 0 0;
    }
    .h-agency dl{
        display:flex;
        justify-content:space-between;
        flex-wrap:wrap;
        width: 87%;
        margin:0;
    }
    .h-agency dl dd{
        width:100%;
        margin:0;
        font-size: 14px;
    }
    .h-agency dl dd span{
        font-size: 11px;
    }
    .h-agency dl dd:nth-child(2) {
        display:flex;
        justify-content:space-between;
        align-items: center;
        color: #71767C;
        flex-wrap: wrap;
    }
    .h-agency dl dd:nth-child(2) p{
        width:60%;
    }
    .h-agency dl dd:nth-child(2) a{
        display:block;
        background:#6281d9;
        color:#fff;
        padding:0.3% 4%;
        border-radius:0.3vw;
        font-size: 0.8vw;
    }
    .h-agency dl dd:nth-child(2) a{
        display:block;
        background:#6281d9;
        color:#fff;
        padding: 1px 10px;
        border-radius: 5px;
        font-size: 11px;
    }
    .h-agency dl dd:nth-child(2) a b{
        font-size: 1.2vw;
    }
    
    .h-menu{
        width: 90%;
        margin: 10% auto;
    }
    .h-menu ul li{
        margin: 20px 0;
    }
    .h-menu ul li a{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        font-size: 14px;
    }
    .h-menu ul li a img{
        width: 26px;
        margin: 0 8px 0 0;
    }
    
    .f-box{
        position: unset;
        bottom: 83px;
        background: #F5F7FC;
        width: 100%;
        padding: 5% 7.5%;
    }
    .f-menu{
        display: block;
        justify-content: space-between;
        flex-wrap: wrap;
        margin: 0 0 20px;
    }
    .f-menu li{
        width: 100%;
        margin: 10px 0;
    }
    .f-menu li a{
       background:#E6E9F2;
       border-radius: 5px;
       padding: 5px 10px;
       display: flex;
       justify-content: space-between;
       font-size: 14px;
       align-items: center;
       position: relative;
    }
    .f-menu li a:after{
       content:"";
       display:inline-block;
       background:url(https://estpartner.jp/images/bp-mypage/icon-mypage-gaibu-blue.svg)no-repeat;
       background-size:contain;
       width: 17px;
       height: 17px;
       position: absolute;
       right: 3%;
    }
    .f-bp-contact{
        margin: 15px 0;
    }
    .f-bp-contact li{
        margin: 5px 0;
    }
    .f-bp-contact li p{
        display:flex;
        flex-wrap:wrap;
        font-size: 14px;
        align-items: center;
        margin: 10px 0;
    }
    .f-bp-contact li p a + span{
        color:#808183;
        margin: 0 0 0 5px;
        font-size: 13px;
    }
    .f-bp-contact li p img{
        width: 19px;
        margin: 0 5px 0 0;
    }
    .f-copyright{
        text-align: center;
        font-size: 11px;
        color: #A6ADBF;
    }
}




/*Base
=============================*/
@media screen and (max-width: 768px){
    .drawer-open {
        overflow: hidden !important;
    }

    .dw-nav {
        position: fixed;
        z-index: -1;
        top: 0;
        overflow: scroll;
        width: 330px;
        height: 100%;
        color: #222;
        background-color: #fff;
    }

    .drawer-brand {
        font-size: 1.5rem;
        font-weight: bold;
        line-height: 3.75rem;
        display: block;
        padding-right: .75rem;
        padding-left: .75rem;
        text-decoration: none;
        color: #222;
    }

    .drawer-menu {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .dw-menu-item {
        font-size: 1.4rem;
        display: block;
        padding: 10px;
        text-decoration: none;
        color: #222;
    }

    .dw-menu-item:hover {
        text-decoration: underline;
        color: #555;
        background-color: transparent;
    }

    /*! overlay */
    .drawer-overlay {
        position: fixed;
        z-index: 100;
        top: 0;
        left: 0;
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .2);
    }

    .drawer-open .drawer-overlay {
        display: block;
    }
}
@media screen and (max-width: 580px){
    .drawer-open {
        overflow: hidden !important;
    }

    .dw-nav {
        width: 100%;
        height: 100%;
    }

    .drawer-brand {
        font-size: 1.5rem;
        font-weight: bold;
        line-height: 3.75rem;
        display: block;
        padding-right: .75rem;
        padding-left: .75rem;
        text-decoration: none;
        color: #222;
    }

    .drawer-menu {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .dw-menu-item {
        font-size: 4.5vw;
        display: block;
        padding: 10px;
        text-decoration: none;
        color: #222;
    }

    .dw-menu-item:hover {
        text-decoration: underline;
        color: #555;
        background-color: transparent;
    }

    /*! overlay */
    .drawer-overlay {
        position: fixed;
        z-index: 100;
        top: 0;
        left: 0;
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .2);
    }

    .drawer-open .drawer-overlay {
        display: block;
    }
}
/*Top
=============================*/
@media screen and (max-width: 768px){
    .drawer--top .dw-nav {
        top: -100%;
        left: 0;
        width: 100%;
        height: auto;
        max-height: 100%;
        -webkit-transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    }

    .drawer--top.drawer-open .dw-nav {
        top: 0;
    }

    .drawer--top .dw-hamb,
    .drawer--top.drawer-open .dw-hamb {
        right: 0;
    }
}

/*Right
=============================*/
@media screen and (max-width: 768px){
     .dw-nav {
        right: -330px;
        -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    }

    .drawer-open .dw-nav,
     .dw-hamb,
    .drawer-open .dw-header .dw-hamb {
        right: 0;
    }

    .drawer-open .dw-hamb {
        right: 16.25rem;
    }
}
@media screen and (max-width: 768px){
     .dw-nav {
        right: -100%;
        -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    }

    .drawer-open .dw-hamb {
        right: 16.25rem;
    }
}
/*Hamburger
=============================*/
@media screen and (max-width: 768px){
    .dw-hamb {
        /* position: fixed; */
        z-index: 104;
        bottom: 0;
        display: block;
        width: 85px;
        -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        border: 0;
        outline: 0;
        background-color: transparent;
        box-sizing: border-box;
        /* height: 85px; */
        padding: 16px 25px 35px;
        background: #314062;
        letter-spacing: 1px;
    }

    .dw-hamb:hover {
        cursor: pointer;
    }

    .dw-hamb-icon {
        position: relative;
        display: block;
        margin-top: 10px;
    }

    .dw-hamb-icon,
    .dw-hamb-icon:before,
    .dw-hamb-icon:after {
        width: 100%;
        height: 3px;
        -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        background-color: #fff;
        border-radius: 100px;
    }
    .dw-hamb-icon{
        width: 30px;
        margin: 14px auto;
    }
    .dw-hamb-icon:before,
    .dw-hamb-icon:after {
        position: absolute;
        top: -10px;
        left: 0;
        content: ' ';
    }

    .dw-hamb-icon:after {
        top: 10px;
    }

    .drawer-open .dw-hamb-icon {
        background-color: transparent;
    }

    .drawer-open .dw-hamb-icon:before,
    .drawer-open .dw-hamb-icon:after {
        top: 0;
    }

    .drawer-open .dw-hamb-icon:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .drawer-open .dw-hamb-icon:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}
@media screen and (max-width: 580px){
    .dw-hamb {
        /* position: fixed; */
        z-index: 104;
        bottom: 0;
        display: block;
        width: 85px;
        -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        border: 0;
        outline: 0;
        background-color: transparent;
        box-sizing: border-box;
        /* height: 85px; */
        padding: 16px 25px 35px;
        background: #314062;
        letter-spacing: 1px;
    }

    .dw-hamb:hover {
        cursor: pointer;
    }

    .dw-hamb-icon {
        position: relative;
        display: block;
        margin-top: 10px;
    }

    .dw-hamb-icon,
    .dw-hamb-icon:before,
    .dw-hamb-icon:after {
        width: 100%;
        height: 2px;
        -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        background-color: #fff;
        border-radius: 100px;
    }
    .dw-hamb-icon{
        width: 22px;
        margin: 7px auto;
    }
    .dw-hamb-icon:before,
    .dw-hamb-icon:after {
        position: absolute;
        top: -7px;
        left: 0;
        content: ' ';
    }

    .dw-hamb-icon:after {
        top: 7px;
    }

    .drawer-open .dw-hamb-icon {
        background-color: transparent;
    }

    .drawer-open .dw-hamb-icon:before,
    .drawer-open .dw-hamb-icon:after {
        top: 0;
    }

    .drawer-open .dw-hamb-icon:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .drawer-open .dw-hamb-icon:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}
/*Navbar
=============================*/
.dw-header {
    position: fixed;
    z-index: 102;
    top: 0;
    width: 23%;
    background: #fff;
    box-shadow: 0 1px 10px 0px rgba(0, 0, 0,0.1);
    /* max-width:450px; */
    height: 100%;
}
.dw-header .dw-hamb {
    display: none;
}
.dw-header .dw-menu-item {
    line-height: 3.75rem;
    padding-top: 0;
    padding-bottom: 0;
}

.dw-header .drawer-menu {
    padding: 0;
    font-size: 16px;
    font-weight: 500;
}
.dw-header .dw-menu-right {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    max-width: 1300px;
    margin: 0 auto;
    transition-timing-function:unset!important;
    transition-duration:unset!important;
    transform:unset!important;
    width: 95%;
}
.dw-header .drawer-menu li {
    width: 105px;
}

@media screen and (max-width: 768px){
    .dw-header {
        position: unset;
        z-index: 102;
        top: 0;
        width: 100%;
        background: #fff;
        padding: 10px 0;
        height: auto;
        box-shadow: 0 1px 10px 0px rgba(0, 0, 0,0.1);
    }
    .dw-header .dw-hamb {
        display: block;
        padding: 10px;
    }
    .dw-header .dw-hamb:after {
        content: "メニュー";
        color: #fff;
        font-size: 13px;
        position: absolute;
        bottom: 12px;
        left: 50%;
        transform: translateX(-50%);
        letter-spacing: 1px;
    }

    .dw-nav-header {
        position: relative;
        z-index: 102;
        box-sizing: border-box;
        width: 100%;
        padding: 0 .75rem;
        text-align: center;
    }

    .dw-header .drawer-brand {
        line-height: 3.75rem;
        display: inline-block;
        padding-top: 0;
        padding-bottom: 0;
        text-decoration: none;
    }

    .dw-header .drawer-brand:hover {
        background-color: transparent;
    }

    .dw-header .dw-nav {
        padding: 0 0 70px;
    }

    .dw-header .drawer-menu {
        width: 90%;
        display: block;
        margin: 10% auto;
    }
    .dw-header .dw-menu-right {
        float: none;
    }
    .dw-header .drawer-menu li {
        float: none;
        width: 100%;
        border-top: 1px solid #e6e6e6;
    }
    .dw-header .drawer-menu > li:last-child {
        border-bottom: 1px solid #e6e6e6;
    }
    .dw-header .drawer-menu li a{
        padding: 15px 15px 15px 0;
        text-align: left;
        border: none;
    }
    .dw-header .drawer-menu li a:after,
    .dw-header .drawer-menu li.nav-menunone > a:after{
        content:"";
        width: 13px;
        height: 13px;
        display:inline-block;
        background: url(../image/img_common/icon-link-arrow-red.svg);
        position:absolute;
        right:0;
        top:50%;
        transform:translateY(-50%);
        left: unset;
    }
    .dw-header .drawer-menu li.nav-megamenu > a:after{
        width: 15px;
        height: 15px;
        background: url(../image/img_common/icon-plus.svg)no-repeat;
        left: unset;
    }
    .dw-header .drawer-menu li.nav-megamenu > a.change:after{
        background: url(../image/img_common/icon-batsu.svg)no-repeat;
    }

    .dw-link-onlineshop a{
        width:90%;
        margin:0 auto;
        display:block;
        padding: 10px;
        background:#e71f17;
        color:#fff;
        font-size: 1.4rem;
        border-radius: 10px;
        letter-spacing: 0;
        text-align:center;
    }
    .dw-link-onlineshop a:before{
        content:"";
        background:url(../image/img_common/icon-cart.svg);
        background-size:contain;
        display:inline-block;
        width:23px;
        height:23px;
        vertical-align:middle;
        margin: 0 5px 0 0;
    }
}

@media screen and (max-width: 580px){
    .dw-header .dw-hamb:after {
        font-size: 10px;
        bottom: 7px;
    }
    .dw-header .drawer-brand {
        line-height: 3.75rem;
        display: inline-block;
        padding-top: 0;
        padding-bottom: 0;
        text-decoration: none;
    }

    .dw-header .drawer-brand:hover {
        background-color: transparent;
    }

    .dw-header .dw-nav {
        padding: 0 0 52px;
    }
    .dw-header .dw-menu-right {
        float: none;
    }
    .dw-header .drawer-menu li:last-child {
        border-bottom: 1px solid #e6e6e6;
    }
    .dw-header .drawer-menu li a{
        padding: 5% 15px 5% 0;
    }

    .dw-link-onlineshop a{
        font-size: 5vw;
    }
    .dw-link-onlineshop a:before{
        width: 27px;
        height: 27px;
    }
}


/*個別調整
==================================*/
/*ロゴエリア*/
.dw-header .dw-nav-header {
    position: relative;
    display: block;
    float: left;
    width: auto;
    padding: 0;
    border: 0;
    margin: 23px 0;
    z-index: 10;
}
.header-logo h1{
    width: 195px;
    text-align: center;
    font-size: 1.5rem;
}
.header-logo img{
    width: 100%;
	height: auto;
    margin: 0 0 5px;
}
.header-logo span{
    font-weight:500;
    letter-spacing: 3px;
}
.header-menu{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 0 0 25px;
}
.sel-lang,
.sel-lang-en{
    display:flex;
    height: 25px;
}
.sel-lang li,
.sel-lang-en li{
    padding:2px 10px;
    font-size: 1.3rem;
    font-weight: 500;
}
.sel-lang li:first-child,
.sel-lang-en li:last-child{
    background:#e71f17;
    color:#fff;
    border-radius:100px;
}
.sel-lang li:last-child,
.sel-lang-en li:first-child{
    position:relative;
}
.sel-lang li:last-child{
    margin:0 0 0 10px;
}
.sel-lang-en li:first-child{
    margin:0 10px 0 0;
}
.sel-lang li:last-child:before,
.sel-lang-en li:first-child:before{
    content:"";
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    background:#282828;
    width:1px;
    height:13px;
}
.sel-lang li:last-child:before{
    left:0;
}
.sel-lang-en li:first-child:before{
    right:0;
}

.link-onlineshop{
    margin:0 0 0 30px;
}
.link-onlineshop a{
    display:block;
    padding: 5px 10px;
    background:#e71f17;
    color:#fff;
    font-size: 1.4rem;
    border-radius:0 0 10px 10px;
    letter-spacing: 0;
}
.link-onlineshop a:before{
    content:"";
    background:url(../image/img_common/icon-cart.svg);
    background-size:contain;
    display:inline-block;
    width:23px;
    height:23px;
    vertical-align:middle;
}
@media screen and (max-width:768px){
    /*ロゴエリア*/
    .dw-header .dw-nav-header {
        float: none;
        width: 185px;
        margin: 0 auto;
        padding: 13px 0;
    }
    .header-logo h1{
        width: 145px;
        text-align: center;
        font-size: 1.2rem;
        margin: 0 auto;
    }
    .header-logo img{
        width: 100%;
        margin: 0 0 5px;
    }
    .header-menu{
        display: block;
        margin: 0;
        position: absolute;
        top: 0;
    }

    .sel-lang,
    .sel-lang-en{
    width: 85px;
    height: 85px;
    display: block;
    }
    .sel-lang li,
    .sel-lang-en li{
        font-size: 1.2rem;
    }

    .sel-lang li:last-child,
    .sel-lang-en li:first-child{
        position:relative;
        margin: 0;
        border-right: 1px solid #eee;
        padding: 0;
    }
    .sel-lang li:last-child a,
    .sel-lang-en li:first-child a{
        display:block;
        text-align: center;
        padding: 16px 0;
    }
    .sel-lang li:last-child a:before,
    .sel-lang-en li:first-child a:before{
        content:"";
        display:block;
        background:url(../image/img_common/icon-global.svg)no-repeat;
        width:30px;
        height:30px;
        margin: 0 auto 5px;
        background-size:contain;
    }
    .sel-lang li:last-child:before,
    .sel-lang-en li:first-child:before{
        content: none;
    }

    .link-onlineshop{
        display:none;
    }
    .link-onlineshop a:before{
        content:"";
        background:url(../image/img_common/icon-cart.svg);
        background-size:contain;
        display:inline-block;
        width:23px;
        height:23px;
        vertical-align:middle;
    }
}


@media screen and (max-width:580px){
    /*ロゴエリア*/
    .dw-header .dw-nav-header {
        padding: 10px 0;
    }
    .header-logo h1{
        width: 135px;
        font-size: 1rem;
    }
    .header-logo img{
        width: 85%;
        margin: 0 auto 4px;
        display: block;
    }

    .sel-lang li:last-child:before,
    .sel-lang-en li:first-child:before{
        content: none;
    }
    .sel-lang,
    .sel-lang-en{
        width: 65px;
        height: 65px;
    }
    .sel-lang li,
    .sel-lang-en li{
        font-size: 1rem;
    }
    .sel-lang li:last-child a,
    .sel-lang-en li:first-child a{
        padding: 10px 0;
    }
    .sel-lang li:last-child a:before,
    .sel-lang-en li:first-child a:before{
        width: 25px;
        height: 25px;
        margin: 0 auto 4px;
    }
    .sel-lang li:last-child:before,
    .sel-lang-en li:first-child:before{
        content: none;
    }

    .link-onlineshop a:before{
        content:"";
        background:url(../image/img_common/icon-cart.svg);
        background-size:contain;
        display:inline-block;
        width:23px;
        height:23px;
        vertical-align:middle;
    }
}

/*========================================
header お問合せボタン モーダル
=========================================*/
a#open-modal{
    cursor:pointer;
}
.modalarea {
    display: none;
    position: fixed;
    z-index: 151;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.modalbg {
    width: 100%;
    height: 100%;
    background-color: rgba(30,30,30,0.9);
}
#modalarea .modalwrapper{
    position: absolute;
    top: 50%;
    left: 50%;
    transform:translate(-50%,-50%);
    width: 85%;
    max-width: 400px;
    padding: 20px 30px 30px;
    background-color: #fff;
    border-radius: 10px;
    box-sizing: border-box;
    color:#282828;
}
#modalarea .modalwrapper h4{
    font-size: 1.7rem;
    margin: 0 0 5px;
}
#modalarea .area-contact{margin: 10px 0 20px;}
#modalarea a.md-btn-contact{
    width:100%;
    background: #f7f5ef;
    box-shadow: 0 1px 4px 0px rgb(0 0 0 / 30%);
    padding: 6% 2%;
    display:block;
    text-align:center;
    font-size: 2.5rem;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: bold;
    margin: 0 0 3%;
    border-radius: 10px;
    line-height: 1;
}
#modalarea a.md-btn-contact:hover{
    opacity:0.8;
}
#modalarea a.md-btn-contact.ico-mail:before,
#modalarea a.md-btn-contact.ico-tel:before{
    content:"";
    width:25px;
    height:25px;
    background-size:contain;
    display:inline-block;
    vertical-align: bottom;
    margin: 0 5px 0 0;
}
#modalarea a.md-btn-contact.ico-mail:before{
    background:url(../image/img_common/icon-mail.svg)no-repeat;
}
#modalarea a.md-btn-contact.ico-tel:before{
    background:url(../image/img_common/icon-tel.svg)no-repeat;
}

#modalarea .contact-note li{
    padding:0;
    text-align:left;
    display:flex;
    font-size: 1.2rem;
    line-height: 1.4;
    margin: 2% 0;
}
#modalarea .contact-note li i{
    font-style:normal;
}
#modalarea .contact-note li span{
    padding:0;
}

#modalarea .operat-hour{
    margin: 5px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 13px;
    letter-spacing: 1px;
    border: 1px solid #eee;
}
#modalarea .operat-hour dt,
#modalarea .operat-hour dd{
    padding: 0;
}
#modalarea .operat-hour dt{
    width:30%;
    font-size: 1.3rem;
    background: #eee;
    padding: 15px 10px;
    text-align: center;
}
#modalarea .operat-hour dd{
    width:70%;
    font-size:1.6rem;
    line-height: 1.2;
    display: block;
    padding: 0 15px;
}
#modalarea .operat-hour dd span{
    display:block;
}

#modalarea .closemodal{
    cursor: pointer;
    width: 100%;
    background: #fff;
    padding: 10px 26px;
    border-radius: 100px;
    font-size: 1.6rem;
    font-weight: 500;
    box-shadow: 0 1px 4px 0px rgb(0 0 0 / 30%);
    box-sizing: border-box;
    text-align: left;
    position: relative;
    display: flex;
    align-items:center;
    max-width: 160px;
    margin: 25px auto 10px;
    justify-content: center;
}
#modalarea .closemodal:before{
    content:"";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin:0 10px 0 0;
    vertical-align: middle;
    background: url(../image/img_common/icon-batsu.svg)no-repeat;
}
#modalarea .closemodal:hover{
    opacity:0.8;
}

@media screen and (max-width:580px){
    #modalarea .modalwrapper{
        padding: 5%;
    }
    #modalarea .modalwrapper h4{
        font-size: 5vw;
        margin: 0 0 2%;
    }
    #modalarea .area-contact{margin: 3% 0 8%;}
    #modalarea a.md-btn-contact{
        font-size: 5.5vw;
        border-radius: 5px;
    }
    #modalarea a.md-btn-contact:hover{
        opacity:0.8;
    }
    #modalarea a.md-btn-contact.ico-tel:before{
        background:url(../image/img_common/icon-tel.svg)no-repeat;
    }

    #modalarea .contact-note li{
        font-size: 3vw;
        margin: 1% 0;
    }
    #modalarea .operat-hour dt,
    #modalarea .operat-hour dd{
        padding: 0;
    }
    #modalarea .operat-hour dt{
        font-size: 3.5vw;
        padding: 5% 1%;
    }
    #modalarea .operat-hour dd{
        font-size: 3.5vw;
    }
    #modalarea .closemodal{
        padding: 3% 5%;
        font-size: 4vw;
        max-width: 130px;
        margin: 10% auto 5%;
    }
    #modalarea .closemodal:before{
        width: 15px;
        height: 15px;
        vertical-align: middle;
    }
    #modalarea .closemodal:hover{
        opacity:0.8;
    }
}



/*=========================================================
SPドロワー調整
=========================================================*/

/*グローバルナビ　メガメニュー
==============================*/
#area-gnav{
	background: #fff;
	margin: 0 auto 10px;
	/* position: absolute; */
	width: 100%;
	height: 100%;
}

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

#area-gnav{
	margin: 0 auto;
	width: 330px;
	position: fixed;
	z-index: 101;
	overflow-y: scroll;
    touch-action: auto !important;
}
}


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

#area-gnav{
	width: 100%;
	position: fixed;
	z-index: 101;
	overflow-y: scroll;
}
}




/*==============================
フロー
================================*/
.bp-flow-area{
  margin: 70px auto;
}
.bp-flow-area h2{
  font-size:53px;
  color:#223360;
  text-align:center;
  margin:0 0 40px;
}
.bp-flow-area figure{
  max-width: 780px;
  margin:0 auto 50px;
}
.text-box{
  width:fit-content;
  margin:50px auto;
}
.text-box .txt-big{
  font-weight:600;
  font-size:22px;
  margin:0 0 10px;
  line-height: 2;
}
.text-box .txt-big a{
  color:#3471EB;
  text-decoration:underline;
}
.text-box .txt-small {
  font-size:18px;
}

.bp-contact li{
  display:flex;
  width: 100%;
  margin: 15px 0;
  font-size:18px;
  line-height: 1.4;
  align-items: center;
  justify-content: left;
  flex-wrap: wrap;
}
.bp-contact li figure{
  max-width: 39px;
  margin: 0;
}
.bp-contact li b{
  padding: 1px 10px 4px;
  background:#223360;
  color:#fff;
  font-weight:400;
  font-size:16px;
  width:65px;
  text-align:center;
  margin:0 10px 0 0;
  border-radius: 3px;
}
.bp-contact li span{
  display:flex;
  flex-wrap:wrap;
  font-weight: 500;
}
.bp-contact li span a{
  margin:0 10px;
}
.bp-contact li span a:hover{
  opacity:1;
}
@media screen and (max-width:768px){
.bp-flow-area{
  margin: 70px auto 50px;
}
.bp-flow-area h2{
  font-size: 40px;
  color:#223360;
  text-align:center;
  margin:0 0 40px;
}
.bp-flow-area figure{
  max-width: 580px;
  margin:0 auto 50px;
}
.text-box{
  width:fit-content;
  margin:50px auto;
}
.text-box .txt-big{
  font-weight:600;
  font-size: 16px;
  margin:0 0 10px;
}
.text-box .txt-big a{
  color:#3471EB;
  text-decoration:underline;
}
.text-box .txt-small {
  font-size: 16px;
}

.bp-contact li{
  display:flex;
  width: 100%;
  margin:20px 0;
  font-size:18px;
  line-height: 1.4;
  align-items: center;
}
.bp-contact li b{
  padding: 1px 10px 4px;
  background:#223360;
  color:#fff;
  font-weight:400;
  font-size:16px;
  width:65px;
  text-align:center;
  margin:0 10px 0 0;
  border-radius: 3px;
}
.bp-contact li span{
  display:flex;
  flex-wrap:wrap;
  font-weight: 500;
}
.bp-contact li span a{
  margin:0 10px;
}
.bp-contact li span a:hover{
  opacity:1;
}	
}
@media screen and (max-width:580px){
.bp-flow-area{
  margin: 40px auto;
}
.bp-flow-area h2{
  font-size: 25px;
  color:#223360;
  text-align:center;
  margin: 0 0 25px;
}
.bp-flow-area figure{
  max-width: 580px;
  margin: 0 auto 30px;
}
.text-box{
  width:fit-content;
  margin: 30px auto;
}
.text-box .txt-big{
  font-weight:600;
  font-size: 14px;
  margin:0 0 10px;
}
.text-box .txt-big a{
  color:#3471EB;
  text-decoration:underline;
}
.text-box .txt-small {
  font-size: 13px;
}
.bp-contact li{
  display:flex;
  width: 100%;
  margin: 15px 0;
  font-size: 16px;
  line-height: 1.4;
  align-items: center;
  flex-wrap: wrap;
}
.bp-contact li{
  display:flex;
  width: 100%;
  margin: 15px 0;
  font-size:18px;
  line-height: 1.4;
  align-items: center;
  justify-content: left;
  flex-wrap: wrap;
}
.bp-contact li figure{
  max-width: 35px;
  margin: 0 5px 0 0;
}
.bp-contact li b{
  padding: 1px 10px 4px;
  background:#223360;
  color:#fff;
  font-weight:400;
  font-size: 13px;
  width: 55px;
  text-align:center;
  margin:0 10px 0 0;
  border-radius: 3px;
}
.bp-contact li span{
  display:flex;
  flex-wrap:wrap;
  font-weight: 500;
  width: 250px;
  font-size: 12px;
}
.bp-contact li span a{
  margin: 0;
  font-size: 14px;
}
.bp-contact li span a:hover{
  opacity:1;
}	
}


/*STEP1 登録情報入力
================================*/
.cont-box dl.d-display-n{
    display:none;
}
.bp-form-input {
  margin:70px 0;
}
.bp-form-input {
  margin: 1.5% 0 7%;
}
.bp-form-input h3{
  font-size:40px;
  color:#223360;
  text-align:center;
  margin:0 0 40px;
}
.cont-box  .bp-form-input dl dt,
.cont-box  .bp-form-input dl dd{
    padding:0;
}
.bp-form-input dl{
  border-top: 2px solid #E6E6E6;
  box-sizing:border-box;
  padding: 1vw;
  display:flex;
  flex-wrap:wrap;
  align-items: center;
  justify-content: space-between;
}
.bp-form-input dl:last-child{
  border-bottom: 2px solid #E6E6E6;
}

.cont-box .bp-form-input dl dt{
  width:30%;
  font-size:0.8vw;
  display:flex;
  align-items:center;
  font-weight:500;
  line-height: 1.4;
  flex-wrap: wrap;
  color: #333;
}
.bp-form-input dl dd{
  width: 68%;
  font-size: 0.8vw;
}
.bp-form-input dl dd .font-small{
    margin:0 0 1%;
}
.bp-form-input dl dd input[type="text"],
.bp-form-input dl dd input[type="password"],
.bp-form-input dl dd textarea {
  font-size: 0.8vw;
  padding: 1.8% 2.5%;
  border:none;
  background: #fff;
  border-radius: 0.3vw;
  box-sizing: border-box;
  width: 100%;
  line-height: 1.4;
  border: 1px solid #ccc;
}
.bp-form-input dl dd input[type="text"]:focus,
.bp-form-input dl dd input[type="password"]:focus,
.bp-form-input dl dd textarea:focus {
/*background-color: #e5ecff;*/
	outline: 2px solid #6281D9;
	/*outline:none;*/
}


.btn-acco-privacy{
	background: #223360;
	width: fit-content;
	padding: 20px 10% 20px 5%;
	color: #fff;
	border-radius: 5px;
	margin: 0;
	cursor: pointer;
	transition: all 0.2s ease-out;
	position:relative;
}
.btn-acco-privacy:hover{
	opacity:0.9;
	transition: all 0.2s ease-out;
}
.btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 45%;
    right: 35px;
    transform: translate(50%, -50%) rotate(45deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.open .btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 55%;
    right: 35px;
    transform: translate(50%, -50%) rotate(225deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.privacy-desc{
	background: #F5F5F5;
	font-size: 14px;
	letter-spacing: 1px;
	transition: all 0.5s ease;
	border-radius: 5px;
	overflow-y: hidden;
	margin: 10px 0 0;
}
.privacy-desc a{
	color: #3471EB;
	text-decoration: underline;
}

.open .privacy-desc {
  max-height: 100%;
	transition: all 0.5s ease;
}
.privacy-desc p{
	padding: 30px 5%;
	font-size: 14px;
}


dd.data-privacy{
    display: grid;
    grid-template-rows: 75px 0fr;
    transition: grid-template-rows .3s ease;
}
dd.data-privacy.open {
    grid-template-rows: 75px 1fr;
}



.privacy-agree{
	margin: 0;
}
.bp-form-input dl dd textarea {
  height:225px;
  resize: vertical;
}
.bp-form-input dl dd .flex{
  display:flex;
	align-items:center;
}
.bp-form-input dl dd .flex span{
  margin:0 5px;
	font-size:20px;
}
.bp-form-input dl dd .flex input[type="text"]{
  max-width:140px;
	
}
.bp-form-input dl dd label{
  margin: 1% 2% 1% 0;
  font-size: 0.9vw;
  display: inline-block;
  /* align-items: center; */
}
.bp-form-input dl dd.radio-col2 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  display: inline-block;
}
.bp-form-input dl dd.radio-col3 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  width: 21%;
  display: inline-block;
}
.bp-form-input dl dd input[type="radio"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 2px solid #9D9FA6;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  background: #fff;
  margin: 0 4px 3px 0;
}
.bp-form-input dl dd input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #6281d9;
  content: '';
}
input[type="checkbox"] {
  position: relative;
  width: 1.3vw;
  height: 1.3vw;
  border: 2px solid #C9C9C9;
  border-radius: 15%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align:middle;
  margin: 0 5px  3px 0;
  background: #fff;
}
input[type="checkbox"]:checked:before {
  position:absolute;
  top: -0.2vw;
  left: 0.3vw;
  transform: rotate(50deg);
  width: 0.6vw;
  height: 1.1vw;
  border-right: 0.3vw solid #6281d9;
  border-bottom: 0.3vw solid #6281d9;
  content: '';
}
.bp-form-input dl dd .select {
    position: relative;
    max-width: 450px;
}

.bp-form-input dl dd .select::before,
.bp-form-input dl dd .select::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.bp-form-input dl dd .select::before {
    display: inline-block;
    right: 0;
    width: 65px;
    height: 100%;
    border-radius: 0 3px 3px 0;
    background-color: #6281D9;
}

.bp-form-input dl dd .select::after {
    position: absolute;
    top: 45%;
    right: 32px;
    transform: translate(50%, -50%) rotate(45deg);
    width: 0.8vw;
    height: 0.8vw;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
}

.bp-form-input dl dd .select select {
    appearance: none;
    max-width: 100%;
    /* height: 2.8em; */
    padding: 3.5% 2.5%;
    border: none;
    border-radius: 0.3vw;
    background-color: #fff;
    color: #333;
    font-size: 0.8vw;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #ccc;
    width: 100%;
}

.bp-form-input dl dd .select select:focus {
    outline: 2px solid #6281D9;
}

.input-note{
  font-size:16px;
  margin: 5px 0 0;
}


.tag-hissu,
.tag-nini{
  padding: 0.6% 3%;
  border-radius:3px;
  color:#fff;
  margin: 0 3% 0 0;
  font-weight:500;
  font-size: 0.8vw;
  width: fit-content;
}
.tag-hissu{
  background:#F20C0C;
}
.tag-nini{
  background:#666;
}





/*規約*/
.agreement{
  font-size: 20px;
  margin: 0 auto 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.agreement a {
    color: #3471EB;
    text-decoration: underline;
}
.agreement a:hover {
	
}

/*ボタン*/
.submit-area{
  text-align:center;
}
.submit-area input[type="submit"],
.submit-area input[type="button"]{
	width: 31%;
	color: #fff;
	display: inline-block;
	padding: 1.4% 0px;
	text-align: center;
	background-color: #6281D9;
	border: none;
	border-radius: 5px;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.5s;
	font-size: 1.1vw;
	box-shadow: 0px 1px 3px 2px #dedede;
	margin: 0 1%;
}
.submit-area input[type="submit"]:hover{
    color: #fff;
    background-color: #3a62cf;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.5s;
}

.submit-area input[type="button"],
.submit-area input[type="submit"][value="入力画面に戻る"]{
	background-color: #8D93A6;
}
.submit-area input[type="button"]:hover,
.submit-area input[type="submit"][value="入力画面に戻る"]:hover {
	background-color: #777C8C;
}
@media screen and (max-width:768px){
.bp-form-input {
  margin:70px 0;
}
.bp-form-input {
  margin: 10px 0 40px;
}
.bp-form-input h3{
  font-size:40px;
  color:#223360;
  text-align:center;
  margin:0 0 40px;
}
.cont-box  .bp-form-input dl dt,
.cont-box  .bp-form-input dl dd{
    padding:0;
}
.bp-form-input dl{
  /* border-top: 2px solid #E6E6E6; */
  box-sizing:border-box;
  padding: 10px 0;
  display:flex;
  flex-wrap:wrap;
  align-items: center;
  justify-content: space-between;
}
.bp-form-input dl:last-child{
  /* border-bottom:2px solid #D9D9D9; */
}

.cont-box .bp-form-input dl dt{
  width: 30%;
  font-size: 14px;
  display:flex;
  align-items:center;
  font-weight:500;
  line-height: 1.4;
  flex-wrap: wrap;
  color: #333;
  max-width: fit-content;
}
.bp-form-input dl dd{
  width: 68%;
  font-size: 14px;
}
.bp-form-input dl dd .font-small{
    margin: 0 0 10px;
}
.bp-form-input dl dd input[type="text"],
.bp-form-input dl dd input[type="password"],
.bp-form-input dl dd textarea {
  font-size: 16px;
  padding: 10px 4%;
  border:none;
  background: #fff;
  border-radius: 3px;
  box-sizing: border-box;
  width: 100%;
  line-height: 1.4;
  border: 1px solid #ccc;
}
.bp-form-input dl dd input[type="text"]:focus,
.bp-form-input dl dd input[type="password"]:focus,
.bp-form-input dl dd textarea:focus {
/*background-color: #e5ecff;*/
	outline: 2px solid #6281D9;
	/*outline:none;*/
}


.btn-acco-privacy{
	background: #223360;
	width: fit-content;
	padding: 20px 10% 20px 5%;
	color: #fff;
	border-radius: 5px;
	margin: 0;
	cursor: pointer;
	transition: all 0.2s ease-out;
	position:relative;
}
.btn-acco-privacy:hover{
	opacity:0.9;
	transition: all 0.2s ease-out;
}
.btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 45%;
    right: 35px;
    transform: translate(50%, -50%) rotate(45deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.open .btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 55%;
    right: 35px;
    transform: translate(50%, -50%) rotate(225deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.privacy-desc{
	background: #F5F5F5;
	font-size: 14px;
	letter-spacing: 1px;
	transition: all 0.5s ease;
	border-radius: 5px;
	overflow-y: hidden;
	margin: 10px 0 0;
}
.privacy-desc a{
	color: #3471EB;
	text-decoration: underline;
}

.open .privacy-desc {
  max-height: 100%;
	transition: all 0.5s ease;
}
.privacy-desc p{
	padding: 30px 5%;
	font-size: 14px;
}


dd.data-privacy{
    display: grid;
    grid-template-rows: 75px 0fr;
    transition: grid-template-rows .3s ease;
}
dd.data-privacy.open {
    grid-template-rows: 75px 1fr;
}



.privacy-agree{
	margin: 0;
}
.bp-form-input dl dd textarea {
  height:225px;
  resize: vertical;
}
.bp-form-input dl dd .flex{
  display:flex;
	align-items:center;
}
.bp-form-input dl dd .flex span{
  margin:0 5px;
	font-size:20px;
}
.bp-form-input dl dd .flex input[type="text"]{
  max-width:140px;
	
}
.bp-form-input dl dd label{
  margin: 5px 20px 5px 0;
  font-size: 16px;
  /* display: flex; */
  /* align-items: center; */
}
.bp-form-input dl dd.radio-col2 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  display: inline-block;
}
.bp-form-input dl dd.radio-col3 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  width: 21%;
  display: inline-block;
}
.bp-form-input dl dd input[type="radio"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 2px solid #9D9FA6;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align:middle;
  background: #fff;
  margin: 0 5px 3px 0;
}
.bp-form-input dl dd input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #6281d9;
  content: '';
}
input[type="checkbox"] {
  position: relative;
  width: 23px;
  height: 23px;
  border: 2px solid #C9C9C9;
  border-radius: 3px;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align:middle;
  margin: 0 5px  3px 0;
  background: #fff;
}
input[type="checkbox"]:checked:before {
  position:absolute;
  top: 0px;
  left: 5px;
  transform: rotate(50deg);
  width: 9px;
  height: 16px;
  border-right: 3px solid #6281d9;
  border-bottom: 3px solid #6281d9;
  content: '';
}
.bp-form-input dl dd .select {
    position: relative;
    max-width: 450px;
}

.bp-form-input dl dd .select::before,
.bp-form-input dl dd .select::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.bp-form-input dl dd .select::before {
    display: inline-block;
    right: 0;
    width: 12%;
    height: 100%;
    border-radius: 0 3px 3px 0;
    background-color: #6281D9;
}

.bp-form-input dl dd .select::after {
    position: absolute;
    top: 45%;
    right: 5.8%;
    transform: translate(50%, -50%) rotate(45deg);
    width: 12px;
    height: 12px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
}

.bp-form-input dl dd .select select {
    appearance: none;
    width: 450px;
    /* height: 2.8em; */
    padding: 9px 4%;
    border: none;
    border-radius: 0.3vw;
    background-color: #fff;
    color: #333;
    font-size: 16px;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #ccc;
}

.bp-form-input dl dd .select select:focus {
    outline: 2px solid #6281D9;
}

.input-note{
  font-size:16px;
  margin: 5px 0 0;
}


.tag-hissu,
.tag-nini{
  padding: 1px 6px;
  border-radius:3px;
  color:#fff;
  margin: 0 10px 0 0;
  font-weight:500;
  font-size: 13px;
  width: fit-content;
}
.tag-hissu{
  background:#F20C0C;
}
.tag-nini{
  background:#666;
}





/*規約*/
.agreement{
  font-size: 20px;
  margin: 0 auto 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.agreement a {
    color: #3471EB;
    text-decoration: underline;
}
.agreement a:hover {
	
}

/*ボタン*/
.submit-area{
  text-align:center;
}
.submit-area input[type="submit"],
.submit-area input[type="button"]{
	width: 43%;
	color: #fff;
	display: inline-block;
	padding: 16px 0px;
	text-align: center;
	background-color: #6281D9;
	border: none;
	border-radius: 5px;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.5s;
	font-size: 18px;
	box-shadow: 0px 1px 3px 2px #dedede;
	margin: 0 1%;
}
.submit-area input[type="submit"]:hover,
.submit-area input[type="button"]:hover{
    color: #fff;
    background-color: #3a62cf;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.5s;
}

.submit-area input[type="button"],
.submit-area input[type="submit"][value="入力画面に戻る"]{
	background-color: #8D93A6;
}
.submit-area input[type="button"]:hover,
.submit-area input[type="submit"][value="入力画面に戻る"]:hover{
	background-color: #777C8C;
}
}

@media screen and (max-width:580px){
.bp-form-input {
  margin:70px 0;
}
.bp-form-input {
  margin: 15px 0 40px;
}
.bp-form-input h3{
  font-size:40px;
  color:#223360;
  text-align:center;
  margin:0 0 40px;
}
.cont-box  .bp-form-input dl dt,
.cont-box  .bp-form-input dl dd{
    padding: 0;
    width: 100%;
}
.cont-box  .bp-form-input dl dd{
    /* padding-left: 10px; */
}
.bp-form-input dl{
  /* border-top: 2px solid #E6E6E6; */
  box-sizing:border-box;
  padding: 20px 0;
  display:flex;
  flex-wrap:wrap;
  align-items: center;
  justify-content: space-between;
}
.bp-form-input dl:last-child{
  /* border-bottom:2px solid #D9D9D9; */
}

.cont-box .bp-form-input dl dt{
  width: 100%;
  font-size: 14px;
  display:flex;
  align-items:center;
  font-weight:500;
  line-height: 1.4;
  flex-wrap: wrap;
  color: #333;
  max-width: fit-content;
  margin: 0 0 10px;
}
.bp-form-input dl dd{
  width: 68%;
}
.bp-form-input dl dd .font-small{
    margin: 0 0 10px;
}
.bp-form-input dl dd input[type="text"],
.bp-form-input dl dd input[type="password"],
.bp-form-input dl dd textarea {
  font-size: 16px;
  padding: 10px 4%;
  border:none;
  background: #fff;
  border-radius: 3px;
  box-sizing: border-box;
  width: 100%;
  line-height: 1.4;
  border: 1px solid #ccc;
}
.bp-form-input dl dd input[type="text"]:focus,
.bp-form-input dl dd input[type="password"]:focus,
.bp-form-input dl dd textarea:focus {
/*background-color: #e5ecff;*/
	outline: 2px solid #6281D9;
	/*outline:none;*/
}


.btn-acco-privacy{
	background: #223360;
	width: fit-content;
	padding: 20px 10% 20px 5%;
	color: #fff;
	border-radius: 5px;
	margin: 0;
	cursor: pointer;
	transition: all 0.2s ease-out;
	position:relative;
}
.btn-acco-privacy:hover{
	opacity:0.9;
	transition: all 0.2s ease-out;
}
.btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 45%;
    right: 35px;
    transform: translate(50%, -50%) rotate(45deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.open .btn-acco-privacy:after{
	content:"";
    position: absolute;
    top: 55%;
    right: 35px;
    transform: translate(50%, -50%) rotate(225deg);
    width: 16px;
    height: 16px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transition: all 0.2s ease-out;
}
.privacy-desc{
	background: #F5F5F5;
	font-size: 14px;
	letter-spacing: 1px;
	transition: all 0.5s ease;
	border-radius: 5px;
	overflow-y: hidden;
	margin: 10px 0 0;
}
.privacy-desc a{
	color: #3471EB;
	text-decoration: underline;
}

.open .privacy-desc {
  max-height: 100%;
	transition: all 0.5s ease;
}
.privacy-desc p{
	padding: 30px 5%;
	font-size: 14px;
}


dd.data-privacy{
    display: grid;
    grid-template-rows: 75px 0fr;
    transition: grid-template-rows .3s ease;
}
dd.data-privacy.open {
    grid-template-rows: 75px 1fr;
}



.privacy-agree{
	margin: 0;
}
.bp-form-input dl dd textarea {
  height:225px;
  resize: vertical;
}
.bp-form-input dl dd .flex{
  display:flex;
	align-items:center;
}
.bp-form-input dl dd .flex span{
  margin:0 5px;
	font-size:20px;
}
.bp-form-input dl dd .flex input[type="text"]{
  max-width:140px;
	
}
.bp-form-input dl dd label{
  margin: 5px 30px 5px 0;
  font-size: 16px;
  /* display: flex; */
  /* align-items: center; */
}
form[action="update_bp_add.php"] .bp-form-input dl dd label{
    margin:10px 0 ;
  display: flex;
  align-items: center;
}
.bp-form-input dl dd.radio-col2 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  display: inline-block;
}
.bp-form-input dl dd.radio-col3 label{
  margin: 0 30px 0 0;
  font-size: 20px;
  width: 21%;
  display: inline-block;
}
.bp-form-input dl dd input[type="radio"] {
  position: relative;
  width: 20px;
  height: 20px;
  border: 2px solid #9D9FA6;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align:middle;
  background: #fff;
  margin: 0 5px 3px 0;
}
.bp-form-input dl dd input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #6281d9;
  content: '';
}
input[type="checkbox"] {
  position: relative;
  width: 23px;
  height: 23px;
  border: 2px solid #C9C9C9;
  border-radius: 3px;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align:middle;
  margin: 0 5px  3px 0;
  background: #fff;
}
input[type="checkbox"]:checked:before {
  position:absolute;
  top: 0px;
  left: 5px;
  transform: rotate(50deg);
  width: 9px;
  height: 16px;
  border-right: 3px solid #6281d9;
  border-bottom: 3px solid #6281d9;
  content: '';
}
.bp-form-input dl dd .select {
    position: relative;
    max-width: 450px;
}

.bp-form-input dl dd .select::before,
.bp-form-input dl dd .select::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.bp-form-input dl dd .select::before {
    display: inline-block;
    right: 0;
    width: 12%;
    height: 100%;
    border-radius: 0 3px 3px 0;
    background-color: #6281D9;
}

.bp-form-input dl dd .select::after {
    position: absolute;
    top: 44%;
    right: 5.9%;
    transform: translate(50%, -50%) rotate(45deg);
    width: 12px;
    height: 12px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
}

.bp-form-input dl dd .select select {
    appearance: none;
    width: 100%;
    /* height: 2.8em; */
    padding: 9px 4%;
    border: none;
    border-radius: 0.3vw;
    background-color: #fff;
    color: #333;
    font-size: 16px;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #ccc;
}

.bp-form-input dl dd .select select:focus {
    outline: 2px solid #6281D9;
}

.input-note{
  font-size:16px;
  margin: 5px 0 0;
}


.tag-hissu,
.tag-nini{
  padding: 2px 10px;
  border-radius:3px;
  color:#fff;
  margin: 0 10px 0 0;
  font-weight:500;
  font-size: 13px;
  width: fit-content;
}
.tag-hissu{
  background:#F20C0C;
}
.tag-nini{
  background:#666;
}





/*規約*/
.agreement{
  font-size: 20px;
  margin: 0 auto 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.agreement a {
    color: #3471EB;
    text-decoration: underline;
}
.agreement a:hover {
	
}

/*ボタン*/
.submit-area{
  text-align:center;
}
.submit-area input[type="submit"],
.submit-area input[type="button"]{
	width: 100%;
	color: #fff;
	display: inline-block;
	padding: 16px 0px;
	text-align: center;
	background-color: #6281D9;
	border: none;
	border-radius: 5px;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.5s;
	font-size: 18px;
	box-shadow: 0px 1px 3px 2px #dedede;
	margin: 5px 0;
}
.submit-area input[type="submit"]:hover,
.submit-area input[type="button"]:hover{
    color: #fff;
    background-color: #3a62cf;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.5s;
}

.submit-area input[type="button"],
.submit-area input[type="button"][value="登録情報に戻る"],
.submit-area input[type="submit"][value="入力画面に戻る"]{
	background-color: #8D93A6;
}
.submit-area input[type="button"]:hover,
.submit-area input[type="button"][value="登録情報に戻る"]:hover,
.submit-area input[type="submit"][value="入力画面に戻る"]:hover {
	background-color: #777C8C;
}
}

/*=============================
STEP3 登録内容確認
================================*/
.bp-form-confirm{
	background: #FCFCFC;
	/* box-shadow: 0px 1px 3px 2px #dedede; */
	padding: 2% 4% 6%;
	margin: 1.5% 0 7%;
}
.confirm-box-inner{
    margin: 0 0 7% 0;
}
.confirm-box h3{
	background:#223360;
	color:#fff;
	width:fit-content;
	padding: 0.3% 1.9% 0.5%;
	font-size: 1.1vw;
	font-weight:500;
	margin: 3% 0 0;
}
.confirm-box dl{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.confirm-box dl dt,
.confirm-box dl dd{
	padding: 2.5% 2% 1.3% 1%;
	box-sizing: border-box;
	font-weight: 500;
	font-size: 0.8vw;
}
.confirm-box dl dt{
	width:30%;
	border-bottom: 1px solid #223360;
}
.confirm-box dl dd{
	width:68%;
	border-bottom: 2px solid #CCC;
}
@media screen and (max-width:768px){
	.bp-form-confirm{
    	background: #FCFCFC;
    	/* box-shadow: 0px 1px 3px 2px #dedede; */
    	padding: 20px 30px 50px 30px;
    	margin: 10px 0 50px;
    }
    .confirm-box-inner{
        margin: 0 0 50px 0;
    }
    .confirm-box h3{
    	background:#223360;
    	color:#fff;
    	width:fit-content;
    	padding: 0.6% 2%;
    	font-size: 14px;
    	font-weight:500;
    	margin: 25px 0 0;
    }
    .confirm-box dl{
    	display:flex;
    	flex-wrap:wrap;
    	justify-content:space-between;
    }
    .confirm-box dl dt,
    .confirm-box dl dd{
    	padding: 20px 15px 10px 10px;
    	box-sizing: border-box;
    	font-weight: 500;
    	font-size: 14px;
    }
    .confirm-box dl dt{
    	width:30%;
    	border-bottom: 1px solid #223360;
    }
    .confirm-box dl dd{
    	width:68%;
    	border-bottom: 2px solid #CCC;
    }
}
@media screen and (max-width:580px){
	.bp-form-confirm{
		background: #FCFCFC;
		/* box-shadow: 0px 1px 3px 2px #dedede; */
		padding: 5px 7% 45px 7%;
		margin: 0 0 50px;
	}
    .confirm-box-inner {
        margin: 0 0 40px 0;
    }
	.confirm-box h3{
		background:#223360;
		color:#fff;
		width:fit-content;
		padding: 2px 13px;
		font-size: 16px;
		font-weight:500;
		margin: 30px 0 0;
	}
	.confirm-box dl{
		display: block;
		justify-content:space-between;
		font-size: 14px;
		line-height: 1.4;
	}
	.confirm-box dl dt,
	.confirm-box dl dd{
		padding: 20px 10px 5px 10px;
		box-sizing: border-box;
	}
	.confirm-box dl dt{
		width: 100%;
		border-bottom: none;
		font-weight: 500;
		color: #949494;
		padding: 15px 0 2px;
	}
	.confirm-box dl dd{
		width: 100%;
		border-bottom: 2px solid #CCC;
		padding: 5px 5px 8px;
	}
}

/*=============================
STEP4 登録完了
================================*/
.bp-contact-area{
	    background: #FCFCFC;
	    box-shadow: 0px 1px 3px 2px #dedede;
	    padding: 30px;
	    margin: 0 0 100px;
}
.bp-contact-area h3{
	font-size:27px;
	text-align:center;
	color: #333;
}

.bp-contact-area ul.flex {
  justify-content: center;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 30px auto 20px;
  width: 100%;
}

.bp-contact-area ul.flex li{
	width:50%;
}
.bp-contact-area ul.flex li a dl{
  justify-content: center; 
 align-items: center;
  display: flex;
  flex-wrap: wrap;  
}
.bp-contact-area ul.flex li a dl dt{
	 max-width: 65px;
	 width:30%;
	 margin:0 3% 0 0;
}
.bp-contact-area ul.flex li:last-child a dl dt{
	 max-width: 50px;
	 width:30%;
	 margin:0 3% 0 0;
}
.bp-contact-area ul.flex li:first-child {
  border-right: 2px solid #B4B4B4;
}
.bp-contact-area ul.flex li a{
	color: #223360;
	max-width: 400px;
	display: block;
	margin: 0 auto;
	width: 90%;
}
.bp-contact-area ul.flex li a:hover{
	text-decoration:none;
}
.bp-contact-area ul.flex li:first-child dd .tel-num {
	font-size: 37px;
	font-weight:500;
	line-height: 1.2;
	text-align: center;
}
.bp-contact-area ul.flex li:first-child dd .tel-time {
	font-size: 18px;
}

.bp-contact-area ul.flex li:last-child a{
	padding: 15px;
	background:#223360;
	border-radius:5px;
	color:#fff;
}
.bp-contact-area ul.flex li:last-child a .btn-link-form{
	font-size:22px;
	font-weight:500;
}
.bp-link-area ul{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.bp-link-area ul li{
	width: 49%;
	margin: 0 0 25px;
	text-align:center;
	box-sizing:border-box;
	height: 180px;
}
.bp-link-area ul li a{
	display: flex;
	padding:20px 5%;
	background:#fff;
	position:relative;
	height: 100%;
	align-items: center;
	justify-content: center;
	border: 2px solid #223360;
	box-sizing: border-box;
}
.bp-link-area ul li a:after{
	content:"";
	position:absolute;
	bottom: 5px;
	right: 5px;
	display:block;
	width:0;
	height:0;
	border-style:solid;
	border-width: 20px 20px 0 0;
	border-color: transparent #223360 transparent transparent;
}
.bp-link-area ul li a:hover{
	text-decoration: none;
}
.bp-link-area ul li a h4{
	font-size: 28px;
	line-height:1.4;
	color:#223360;
	margin:0 0 10px;
}
.bp-link-area ul li a h4 b{
	display:block;
	font-weight:600;
}
.bp-link-area ul li a h4 span{
	font-size: 18px;
}
.bp-link-area ul li a p{
	font-size:16px;
	line-height:1.4;
	margin:0 0 10px;
}
@media screen and (max-width:768px){
	.bp-contact-area{
		    background: #FCFCFC;
		    box-shadow: 0px 1px 3px 2px #dedede;
		    padding: 30px 2%;
		    margin: 0 0 50px;
	}
	.bp-contact-area h3{
		font-size: 23px;
		text-align:center;
		color: #333;
		line-height: 1.4;
	}
	
	.bp-contact-area ul.flex {
	  justify-content: center;
	  align-items: center;
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0;
	  margin: 20px auto;
	  width: 100%;
	}
	
	.bp-contact-area ul.flex li{
		width:50%;
	}
	.bp-contact-area ul.flex li a dl{
	  justify-content: center; 
	 align-items: center;
	  display: flex;
	  flex-wrap: wrap;  
	}
	.bp-contact-area ul.flex li a dl dt{
		 max-width: 50px;
		 width: 15%;
		 margin: 0 2% 0 0;
	}
	.bp-contact-area ul.flex li:last-child a dl dt{
		 max-width: 50px;
		 width: 15%;
		 margin: 0 2% 0 0;
	}
	.bp-contact-area ul.flex li:first-child {
	  border-right: 2px solid #B4B4B4;
	}
	.bp-contact-area ul.flex li a{
		color: #223360;
		max-width: 400px;
		display: block;
		margin: 0 auto;
		width: 90%;
	}
	.bp-contact-area ul.flex li a:hover{
		text-decoration:none;
	}
	.bp-contact-area ul.flex li:first-child dd .tel-num {
		font-size: 27px;
		font-weight:500;
		line-height: 1.2;
		text-align: center;
	}
	.bp-contact-area ul.flex li:first-child dd .tel-time {
		font-size: 13px;
	}
	
	.bp-contact-area ul.flex li:last-child a{
		padding: 8px 3%;
		background:#223360;
		border-radius:5px;
		color:#fff;
	}
	.bp-contact-area ul.flex li:last-child a .btn-link-form{
		font-size: 16px;
		font-weight:500;
	}
	.bp-link-area ul{
		display:flex;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	.bp-link-area ul li{
		width: 49%;
		margin: 0 0 25px;
		text-align:center;
		box-sizing:border-box;
		height: 180px;
	}
	.bp-link-area ul li a{
		display: flex;
		padding:20px 5%;
		background:#fff;
		position:relative;
		height: 100%;
		align-items: center;
		justify-content: center;
		border: 2px solid #223360;
		box-sizing: border-box;
	}
	.bp-link-area ul li a:after{
		content:"";
		position:absolute;
		bottom: 5px;
		right: 5px;
		display:block;
		width:0;
		height:0;
		border-style:solid;
		border-width: 15px 15px 0 0;
		border-color: transparent #223360 transparent transparent;
	}
	.bp-link-area ul li a:hover{
		text-decoration: none;
	}
	.bp-link-area ul li a h4{
		font-size: 18px;
		line-height:1.4;
		color:#223360;
		margin:0 0 10px;
	}
	.bp-link-area ul li a h4 b{
		display:block;
		font-weight:600;
	}
	.bp-link-area ul li a h4 span{
		font-size: 18px;
	}
	.bp-link-area ul li a p{
		font-size: 13px;
		line-height:1.4;
		margin:0 0 10px;
	}	
}
@media screen and (max-width:580px){
	.bp-contact-area{
		    background: #FCFCFC;
		    box-shadow: 0px 1px 3px 2px #dedede;
		    padding: 30px 2%;
		    margin: 0 0 30px;
	}
	.bp-contact-area h3{
		font-size: 18px;
		text-align:center;
		color: #333;
		line-height: 1.4;
	}
	
	.bp-contact-area ul.flex {
	  justify-content: center;
	  align-items: center;
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0;
	  margin: 20px auto 0;
	  width: 100%;
	}
	
	.bp-contact-area ul.flex li{
		width: 100%;
		margin: 5% 0 0;
	}
	.bp-contact-area ul.flex li a dl{
	  justify-content: center; 
	 align-items: center;
	  display: flex;
	  flex-wrap: wrap;  
	}
	.bp-contact-area ul.flex li a dl dt{
		 max-width: 50px;
		 width: 15%;
		 margin: 0 2% 0 0;
	}
	.bp-contact-area ul.flex li:last-child a dl dt{
		 max-width: 50px;
		 width: 15%;
		 margin: 0 2% 0 0;
	}
	.bp-contact-area ul.flex li:first-child {
	  border-right: none;
	  /* order: 2; */
	  margin: 0;
	}
	.bp-contact-area ul.flex li a{
		color: #223360;
		max-width: 400px;
		display: block;
		margin: 0 auto;
		width: 90%;
	}
	.bp-contact-area ul.flex li a:hover{
		text-decoration:none;
	}
	.bp-contact-area ul.flex li:first-child dd .tel-num {
		font-size: 24px;
		font-weight:500;
		line-height: 1;
		text-align: center;
	}
	.bp-contact-area ul.flex li:first-child dd .tel-time {
		font-size: 13px;
		letter-spacing: 1px;
	}
	
	.bp-contact-area ul.flex li:last-child a{
		padding: 8px 3%;
		background:#223360;
		border-radius:5px;
		color:#fff;
	}
	.bp-contact-area ul.flex li:last-child a .btn-link-form{
		font-size: 16px;
		font-weight:500;
	}
	.bp-link-area ul{
		display: block;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	.bp-link-area ul li{
		width: 100%;
		margin: 0 0 10px;
		text-align:center;
		box-sizing:border-box;
		height: auto;
	}
	.bp-link-area ul li a{
		display: flex;
		padding: 20px 3%;
		background:#fff;
		position:relative;
		height: 100%;
		align-items: center;
		justify-content: center;
		border: 2px solid #223360;
		box-sizing: border-box;
	}
	.bp-link-area ul li a:after{
		content:"";
		position:absolute;
		bottom: 5px;
		right: 5px;
		display:block;
		width:0;
		height:0;
		border-style:solid;
		border-width: 10px 10px 0 0;
		border-color: transparent #223360 transparent transparent;
	}
	.bp-link-area ul li a:hover{
		text-decoration: none;
	}
	.bp-link-area ul li a h4{
		font-size: 16px;
		line-height:1.4;
		color:#223360;
		margin: 0 0 5px;
	}
	.bp-link-area ul li a h4 b{
		display:block;
		font-weight:600;
	}
	.bp-link-area ul li a h4 span{
		font-size: 12px;
	}
	.bp-link-area ul li a p{
		font-size: 12px;
		line-height:1.4;
		margin: 0;
	}	
}





/*==========================
フォームズ
============================*/
#main iframe.formz-inq {
    border: none;
    height: 1260px;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width:580px){
    #main .inq-area{
        width:90%;
        margin:0 auto;
    }
}

/*==========================
hubspot form
============================*/
#main iframe.form-hubspot {
    border: 0;
    max-width: 767px;
    height: 980px;
}

