:root {
    --easing            : cubic-bezier(.2, 1, .2, 1);
    --transition        : .8s var(--easing);
    --color-base        : #f8f8f8;
    --color-gray        : #ddd;
    --color-theme       : #fff;
    --color-theme-darken: #0f0f0f;
    --main-text         : font-family: 'Belleza', sans-serif;
    --box-shadow        : .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #fff;
    --box-shadow-hover  : 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
    --box-shadow-inset  : inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
    --box-shadow-dark   : .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff, .2);
}



.news #header {
    height: 100px;
}

.common-page-kv {
    padding    : 40px;
    position   : relative;
    width      : 100%;
    margin-left: auto;
    transition : .8s;
}



.page-common-sec {
    margin-top    : 60px;
    margin-bottom : 60px;
    padding-top   : 60px;
    padding-bottom: 60px;
}


.common-sec_cont {
    width : 88%;
    margin: 0 auto;
}


@media (max-width: 1024px) {

    .common-page-kv {
        padding: 40px;
        width  : 100%;
    }

    .common-page-kv-ttl_area {
        position: absolute;
        bottom  : -30px;
        left    : auto;
    }

    .page-common-sec {
        margin-top    : 40px;
        margin-bottom : 40px;
        padding-top   : 40px;
        padding-bottom: 40px;
    }




    .single .common-page-kv {
        padding: 20px 25px 20px;
    }


}

@media (max-width: 768px) {




    .page-common-sec {
        margin-top   : 30px;
        margin-bottom: 0;
        padding      : 40px 30px 30px;
    }

    .common-sec_cont {
        margin: 0 auto 40px;
        width : 100%;
    }




}


@media (max-width: 599px) {

    .common-page-kv {
        width  : 100%;
        padding: 45px;
    }

    .page-common-sec {
        margin-top    : 20px;
        margin-bottom : 0;
        padding-top   : 25px;
        padding-bottom: 30px;
        padding       : 25px 20px 30px;
    }

    .common-sec_cont {
        padding: 0 20px;
    }

    .common-sec {
        padding   : 0 25px;
        padding-top: 40px;
    }


    .common-page-kv::before {
        left: 4%;
        top : 10px;
    }

    .common-page-kv-ttl_area {
        left: 20px;
    }

    .common-page-kv-ttl_area h2 {
        font-size: 4.6rem;
    }

    .common-page-kv-ttl_area h2 br {
        display: none;
    }


}



/* -------------------------------- */
/*archiveページ
/* -------------------------------- */

#page-info-sec {
    margin-top    : 20px;
    margin-bottom : 60px;
    padding-top   : 20px;
    padding-bottom: 60px;
}

.info-lead_container .page-info-sub-title {
    font-size  : clamp(3.8rem, 5.2vw, 6.2rem);
    font-weight: 300;
    margin     : 30px 0 0;
}

.info-sec_cont {
    width: 88%;
    margin: 0 auto;
}

.info-list_area ul li {
    padding-top: 4.8vw;
    padding-bottom: 4.8vw;
    border-bottom: solid 1px #585858;
}

.info-list_area ul li:first-child {
    border-top: solid 1px #585858;
}

.info-data_area {
    margin-bottom: 20px;
}
.info-topics-ttl h3 {
    font-size: 3.2rem;
    font-size  : clamp(2.4rem, 3vw, 3.2rem);
    margin-bottom: 20px;
}
.contents-text {
    margin-bottom: 32px;
    font-size: 1.8rem;
    font-size  : clamp(1.5rem, 1.7vw, 1.8rem);
    line-height: 1.6;
}

.topics-link-text {
    font-size: 2.4rem;
    font-size  : clamp(1.8rem, 2.2vw, 2.4rem);
}




/* -------------------------------- */
/*archiveページ-メディアクエリ
/* -------------------------------- */


@media (max-width: 768px) {}

@media (max-width: 599px) {

    .info-sec_cont {
        width: 100%;
    }
}




/* -------------------------------- */
/* about us(会社概要)ページ
/* -------------------------------- */


.page-intro_container {
    max-width: 1200px;
    margin   : 0 auto;
}

.page-lead_content_txt {
    margin-top : 40px;
    line-height: 1.8;
}

.page-about-img {
    width : 46%;
    margin: 60px 0 0 auto;
}

/*写真アニメーション*/
.l-lead_item_img_wrapper {
    position: relative;
    overflow: hidden;
}

.l-lead_item_img_wrapper.-second {
    position: relative;
}

.l-lead_item_img_wrapper.-second:before {
    position  : absolute;
    top       : 0;
    left      : 0;
    display   : block;
    content   : "";
    width     : 100%;
    height    : 100%;
    background: #ececec;
    background: linear-gradient(359.67deg, #F5F5F5 0.93%, rgba(217, 217, 217, 0.452761) 34.72%, rgba(217, 217, 217, 0) 99.81%);
    z-index   : 2;
    transform : translateY(100%);
}

@keyframes showMask {
    0% {
        transform: translateY(100%);
    }

    45%,
    55% {
        transform: translateY(0%);
    }

    100% {
        transform: translateY(-100%);
    }
}

.l-lead_item_img_wrapper.-second.is-active:before {
    animation: showMask 1s forwards;
}

.l-lead_item_img_wrapper.-second img {
    opacity  : 0;
    display  : block;
    transform: translateY(100%);
    animation: 2s cubic-bezier(.4, 0, .2, 1) forwards;
    opacity  : 0;

}

@keyframes showElements {
    from {
        transform: translateY(-100%);
        /* 要素を下の枠外に移動*/
        opacity  : 0;
    }

    to {
        transform: translateY(0);
        /* 要素を元の位置に移動*/
        opacity  : 1;
    }
}


.l-lead_item_img_wrapper.-second.is-active img {
    animation       : showElements 0.01s 0.5s forwards;
    transform       : translateY(0);
    opacity         : 1;
    transform       : matrix(1, 0, 0, 1, 0, 0);
    transition-delay: .5s;
}


/*3つのvision*/
.philosophy_wrapper {
    display        : flex;
    align-items    : center;
    justify-content: center;
}

.philosophy-circle {
    padding       : 80px 20px;
    display       : flex;
    flex-direction: column;
    align-items   : center;
    height        : 380px;
    width         : 380px;
    margin-bottom : 40px;
    text-align    : center;
    position      : relative;
}

.philosophy_wrapper li:nth-of-type(1) {
    margin-right: -32px;
}


.philosophy_wrapper li:nth-of-type(3) {
    margin-left: -32px;
}



.circle_area {
    width   : 100%;
    height  : 100%;
    position: absolute;
    top     : 0;
    left    : 0;
}

.circle_area svg {
    display  : block;
    width    : auto;
    height   : auto;
    transform: rotate(-90deg);
    position : absolute;
    top      : 0;
    left     : 0;
}

.circle_area circle {
    fill            : none;
    stroke          : #888;
    stroke-width    : 1px;
    stroke-dasharray: 1190;
}

.circle_area circle {
    stroke-dashoffset: 1190;
    transition       : 1.4s cubic-bezier(.76, 0, .24, 1)
}

.circle_area.is-active circle {
    stroke-dashoffset: 0
}

.philosophy_wrapper li:nth-of-type(2) .circle_area.is-active circle {
    transition-delay: .4s;
}

.philosophy_wrapper li:nth-of-type(3) .circle_area.is-active circle {
    transition-delay: .6s;
}

.philosophy-circle h2 {
    font-size    : 2.4rem;
    text-align   : center;
    margin-bottom: 50px;
    position     : relative;
    z-index      : 10;
}

.philosophy-circle h2 span {
    font-size    : 1.4rem;
    display      : block;
    margin-bottom: 15px;
    font-weight  : 300;
}

.philosophy-circle p {
    font-size  : 1.7rem;
    text-align : center;
    line-height: 1.6;
    position   : relative;
    z-index    : 20;
}


/*会社概要（outline）*/
.page-company_container {
    max-width: 1200px;
    margin   : 0 auto;
}


.company-info-wrapper {
    width      : calc(100% - 460px);
    margin-left: auto;
    margin-top : -40px;
}

.company-info-wrapper dl {
    display      : flex;
    flex-wrap    : wrap;
    padding      : 25px 20px;
    align-items  : flex-start;
    border-bottom: solid 1px #888;
}

.company-info-wrapper dl dt {
    width      : 30%;
    box-sizing : border-box;
    line-height: 1.4;
}

.company-info-wrapper dl dd {
    margin     : 0;
    width      : 70%;
    box-sizing : border-box;
    line-height: 1.4;
}

.company-info-wrapper dl dd p {
    margin-bottom: 40px;
}

.company-info-wrapper dl dd p:last-child {
    margin-bottom: 0;
}

.company-info-wrapper dl dd .map {
    margin-left: 20px;
}

.company-info-wrapper dl dd .map a {
    color           : #fff;
    padding         : 5px 4px;
    font-size       : 1.4rem;
    background-color: #012060;
    letter-spacing  : -0.5px;
}

/*メッセージ*/
.page-message_container {
    max-width: 1200px;
    margin   : 0 auto;
}

.page-message_container .l-lead_content_ttl .l-lead_desk {
    font-size: clamp(3.2rem, 4rem, 4.8rem);
}

.representative {
    width    : 46%;
    margin   : 60px 0 0 auto;
    font-size: 1.8rem;
}

.representative span {
    font-size   : 1.4rem;
    margin-right: 10px;
}

.company-img_area .page-company-img {
    width : 60%;
    max-width: 1080px;
    margin: 0 auto;
}


/* -------------------------------- */
/*about us(会社概要)ページ-メディアクエリ
/* -------------------------------- */
@media (max-width: 1200px) {

    .philosophy-circle h2 {
        margin-bottom: 30px;
    }

    .philosophy-circle p {
        font-size: 1.4rem;
    }
}

@media (max-width: 1024px) {
    .philosophy-circle {
        width          : calc(350px - 1.8vw);
        height         : calc(350px - 1.8vw);
        justify-content: center;
        margin-bottom  : 0;
    }


    .hidden-content-text {
        transform: translateX(0);
    }

    .philosophy_wrapper {
        flex-wrap: wrap;
        padding  : 0 20px;
    }


    .philosophy-circle:last-child {
        margin-top  : -74px;
        margin-right: 0;
    }

    .philosophy_wrapper li:nth-of-type(1) {
        margin-right: -16px;
    }

    .philosophy_wrapper li:nth-of-type(2) {
        margin-left: -16px;
    }

    .philosophy_wrapper li:nth-of-type(3) {
        margin-left: 0;
    }


    .company-info-wrapper {
        width     : 80%;
        margin-top: 0;
    }

}

@media (max-width: 760px) {
    .philosophy-circle {
        width : calc(340px - 2.2vw);
        height: calc(340px - 2.2vw);
    }
}

@media (max-width: 720px) {
   

    .philosophy_wrapper li:nth-of-type(1) {
        margin-right: 0;
    }

    .philosophy_wrapper li:nth-of-type(2) {
        margin-left: 0;
        margin-top : -40px;
    }

    .philosophy-circle:last-child {
        margin-top: -40px;
    }

}


@media (max-width: 599px) {

    /* #page-message-sec {
        padding: 0;
        margin : 0;
    } */

    #page-message-sec .common-sec_cont {
        margin-bottom: 0;
    }

    .page-lead_content_txt {
        margin-top: 0;
        font-size: 1.4rem;
    }

    .page-lead_content_txt br {
        display: none;
    }

    .page-about-img {
        width: 70%;
    }

    .philosophy-circle {
        width : 300px;
        height: 300px;
    }

    /* .philosophy-circle:nth-child(2) {
        margin-top: -40px;
    }

    .philosophy-circle:last-child {
        margin-top: -40px;
    } */

    .company-info-wrapper {
        width: 100%;
    }

    .company-info-wrapper dl dt {
        font-size: 1.4rem;
    }

    .company-info-wrapper dl dd {
        font-size: 1.4rem;
    }

    .page-message_container .l-lead_content_ttl .l-lead_desk {
        font-size: 2.6rem;
    }

    .company-img_area .page-company-img {
        width     : 88%;
        margin-top: 60px;
    }
}


/* -------------------------------- */
/*service(事業案内)ページ
/* -------------------------------- */



.page-service-head {
    padding-bottom: 40px;
    position      : relative;
}

.page-service-head::after {
    content         : "";
    display         : block;
    width           : 0;
    height          : 1px;
    background-color: #1e1e1e;
    position        : absolute;
    bottom          : 0;
    left            : 0;
    z-index         : 1;
    transition      : 3s cubic-bezier(0.19, 1, 0.22, 1);
}

.page-service-head.is-active::after {
    width: 100%;
}


/*ここから事業内容詳細*/

.service-detail-desk_wrapper {
    display    : flex;
    flex-wrap  : wrap;
    padding-top: 3.2967032967vw;
}


.our-services-title_wrapper {
    flex : 0 0 auto;
    width: 33.33333333%;
}


.our-services-title {
    max-width     : 359.414px;
    width         : 359.414px;
    font-size     : 2.9304029304vw;
    font-weight   : 300;
    letter-spacing: -.01em;
    line-height   : 1.2;
}

/*ここから右側*/
.service-detail-main_wrapper {
    flex : 0 0 auto;
    width: 66.66666667%;
}

.service-desk-line {
    background   : #1e1e1e;
    display      : block;
    height       : 1px;
    margin-bottom: 3.2967032967vw;
    position     : relative;
    width        : 0%;
    transition   : 3s cubic-bezier(0.19, 1, 0.22, 1);
}

.service-desk-line.is-active {
    width: 100%;
}

.primary-service_inner {
    display    : flex;
    height     : 15.1098901099vw;
    opacity    : .15;
    transition : opacity .76s ease-out;
    will-change: opacity;
}

.primary-service_inner:first-child {
    opacity: 1;
}

.primary-service_inner.is-active {
    opacity         : 1;
    transition-delay: .4s;
}

.primary-service_inner .page-service-heading {
    margin-right: 2.9304029304vw;
    width       : 43.0389221557%;
}


.service-num {
    font-size : 1.4rem;
    color     : #888;
    margin-top: -15px;
    display   : block;
}

.common-headline {
    font-weight: 300;
    line-height: 1.2;
}

.service-text-en {
    font-size: 2.2vw;
}


.page-service-detail-jp {
    font-size  : clamp(1.1rem, 1.2vw, 1.4rem);
    display    : block;
    margin-top : 30px;
    color      : #777777;
    font-weight: 300;
}


.primary-service_inner .home-service__description {
    width      : 42.6646706587%;
    font-size  : clamp(1.2rem, 1.2vw, 1.5rem);
    color      : #1e1e1e;
    line-height: 1.6;
}

/* -------------------------------- */
/*service(事業案内ページ)メディアクエリページ
/* -------------------------------- */
@media (max-width: 1024px) {

    #page-service-sec .common-sec_cont {
        width  : 100%;
        padding: 0 30px;
    }

    .our-services-title {
        width         : 100%;
        letter-spacing: .02em;
    }

    .our-services-title br {
        display: none;
    }

    .service-detail-main_wrapper {
        display   : block;
        width     : 100%;
        margin-top: 60px;
    }
}

@media (max-width: 768px) {

    #page-service-sec .common-sec_cont {
        padding: 0;
    }
}

@media (max-width: 599px) {

    #page-service-sec .common-sec_cont {
        margin-bottom: 0;
    }

    .our-services-title {
        max-width: none;
        font-size: 3.4rem;
    }

    .primary-service_inner {
        flex-direction: column;
        row-gap       : 25px;
        height        : auto;
        margin-bottom : 60px;
    }

    .primary-service_inner:last-child {
        margin-bottom: 0;
    }

    .page-service-detail-jp {
        margin-top: 15px;
    }

    .service-text-en {
        font-size: 2.6rem;
    }

    .primary-service_inner .page-service-heading {
        width       : 100%;
        margin-right: 0;
    }

    .primary-service_inner .home-service__description {
        width: 100%;
    }
}

/* -------------------------------- */
/*singleページ
/* -------------------------------- */

.single-sec {
    padding  : 80px 0 180px;
    margin   : 0 auto;
    max-width: 1200px;
}


.single_box h2 {
    text-align   : left;
    font-size    : 2.4rem;
    line-height  : 1.4;
    margin-bottom: 30px;
}

.single_box .category {
    display    : flex;
    align-items: center;
}

.single_box .category span {
    font-size: 1.4rem;

    font-weight: normal;
}

.post-category {
    margin-left: 20px;
}

.single_box h3 {
    font-weight: normal;
    font-size  : 1.6rem;
    line-height: 1.4;
    margin-top : 60px;
}

.single_box h3 p {
    line-height: 1.8;
}

@media (max-width: 1024px) {
    .single-sec {
        padding: 40px 40px 80px;
    }
}

@media (max-width: 599px) {


    .single-sec {
        padding: 30px 25px 80px;
    }

    .single_box h2 {
        font-size    : 1.8rem;
        margin-bottom: 15px;
    }

    .single_box .category span {
        font-size: 1.2rem;
    }

    .single_box h3 {
        margin-top : 30px;
        font-size  : 1.4rem;
        line-height: 1.8;
    }

    .single_box p {
        font-size  : 1.3rem;
        line-height: 1.8;
        margin     : 10px 0;
    }

}



/* -------------------------------- */
/*404ページ
/* -------------------------------- */

.found_page-cont {
    padding-top: 300px;
}

.found_page {
    margin-bottom: 300px;
}

.found_page h2 {
    font-size    : 3rem;
    line-height  : 1.4;
    text-align   : center;
    margin-bottom: 40px;
    position     : relative;
}

.found_page h2::before {
    content            : "";
    background-image   : url(/assets/images/treatment.svg);
    display            : block;
    width              : 40px;
    height             : 20px;
    top                : -20px;
    margin             : 0 auto;
    position           : absolute;
    background-repeat  : no-repeat;
    background-position: center;
    background-size    : contain;
    left               : 50%;
    transform          : translateX(-50%);
}

.found_page p {
    font-size    : 1.5rem;
    line-height  : 1.4;
    text-align   : center;
    margin-bottom: 30px;
}

.found-btn {
    margin: 30px auto 0;
}

@media (max-width: 599px) {

    .found_page-cont {
        padding-top: 200px;
    }

    .found_page {
        margin-bottom: 200px;
    }

    .found_page h2 {
        font-size    : 2rem;
        margin-bottom: 30px;
    }

    .found_page p {
        font-size: 1.4rem;
    }
}

/* -------------------------------- */
/*お問い合わせフォーム
/* -------------------------------- */


.entry-sec_cont {
    padding-bottom: 60px;
    margin-bottom : 60px;
}

.entry-sec_cont .entry-message {
    font-size    : 1.6rem;
    line-height  : 1.6;
    margin-top   : 40px;
    margin-bottom: 8px;
    text-align   : center;
}

.contact-form-lead-text {
    font-size  : clamp(3rem, 3.8vw, 4.2rem);
    font-weight: 300;
    text-align : center;
}

.entry-sec_cont .entry-message-note {
    font-size  : 1.4rem;
    line-height: 1.6;
    display    : block;
    text-align : center;
}

.entry-form_wrapper {
    padding: 60px 0 0;
}

.wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-textbox {
    width                : 100%;
    height               : 60px;
    /* border            : solid 1px #d5d5d5; */
    border               : none;
    padding              : 5px 15px;
    box-sizing           : border-box;
    border-radius        : 3px;
    -webkit-appearance   : none;
    font-family: "dnp-shuei-gothic-gin-std", sans-serif;
}

.wpcf7-form table {
    max-width : 960px;
    width     : 100%;
    text-align: left;
    margin    : 0 auto;
}

.page_cont .wpcf7-form table tr {
    position     : relative;
    margin-bottom: 20px;
    border-bottom: none;
}

.page_cont .wpcf7-form table span {
    color: #888;
}

.wpcf7-form table th {
    text-align    : left;
    width         : 26%;
    vertical-align: top;
    color         : #1e1e1e;
    font-size     : 100%;
    padding       : 33px 0 30px;
}

.wpcf7-form table th p {
    font-size  : 1.7rem;
    font-weight: 400;
    line-height: 1.3;
    font-family: "dnp-shuei-gothic-gin-std", sans-serif;
}

.wpcf7-form table td {
    vertical-align: top;
    padding       : 26px 0;
}

.wpcf7-form .address td {
    display: block;
    padding: 10px 0;
}

.wpcf7-form .address td ul {
    padding-bottom: 26px;
}

.wpcf7-form .address td ul li {
    padding-top: 20px;
}

/*ラジオボタン*/

.your-choose {
    display   : flex;
    column-gap: 20px;
}

.wpcf7-list-item {
    display: inline-block;
    margin : 0;
}

.wpcf7-list-item.first {
    margin   : 0;
    opacity  : 1;
    transform: translateY(0);
}

.wpcf7-list-item-label {
    cursor : pointer;
    display: flex;
    font-family: "dnp-shuei-gothic-gin-std", sans-serif;
}

/* デフォルトのボタン */
input[type="radio"] {
    opacity : 0;
    /* デフォルトのボタンを非表示 */
    position: absolute;
}

/* チェック前のボタン */
.wpcf7-list-item-label::before {
    background      : #fff;
    /* border       : 1px solid #333; */
    border-radius   : 100%;
    /* ラジオボタンっぽく丸くする */
    content         : "";
    height          : 1.2em;
    margin-bottom   : auto;
    margin-right    : 0.5em;
    margin-top      : auto;
    transition      : background-color 0.5s;
    /* 色をじんわり変化させる */
    width           : 1.2em;
}

/* チェック後のボタン */
input[type="radio"]:checked+.wpcf7-list-item-label::before {
    background-color: #1e1e1e;
    /* チェック後の中心の色 */
    box-shadow      : inset 0 0 0 3px #fff;
    /* 中心の色のスタイル */
}

::placeholder {
    color      : #969696;
    font-weight: normal;
    font-family: "Poppins", sans-serif;
}

.wpcf7-form span.red {
    color    : #aa0000;
    color    : #ffa4a4;
    padding  : 0 4px;
    font-size: 1rem;
}

.wpcf7-form textarea {
    width             : 100%;
    border            : solid 1px #d5d5d5;
    height            : 200px;
    border-radius     : 3px;
    -webkit-appearance: none;
    box-sizing        : border-box;
    padding           : 5px 15px;
}

.wpcf7-form .wpcf7-submit {
    width             : 30%;
    background        : #242424;
    color             : #fefefe;
    border            : none;
    margin            : 0 auto;
    display           : block;
    padding           : 20px;
    font-size         : 1.5rem;
    cursor            : pointer;
    -webkit-appearance: none;
    max-width         : 400px;
    border-radius     : 100vh;
}

/* .chack-form {
    text-align: center;
  } */

.send {
    margin: 60px auto 0;
}

.wpcf7-not-valid-tip {
    color      : #ffa4a4;
    font-size  : 1.2rem;
    font-weight: normal;
    display    : block;
    padding-top: 4px;
}

.wpcf7-select>option {
    color      : #969696;
    font-weight: normal;
    font-family: "Poppins", sans-serif;
}

.confirmation {
    display   : block;
    margin-top: 6px;
    text-align: center;
    font-size : 1.2rem;
}

div.wpcf7-mail-sent-ok {
    border    : solid 1px #01305a;
    text-align: center;
    font-size : 1.3rem;
    margin    : 0 auto;
    max-width : 400px;
}

/*同意ボタン*/

input[type="checkbox"] {
    height   : 20px;
    margin   : 0px 8px 0px 0px;
    padding  : 0px;
    width    : 20px;
    max-width: calc(100% - 8px);
}

.contact-agreement .wpcf7-list-item-label::before {
    content: none;
}

.contact-agreement label {
    display    : flex;
    align-items: center;
}

.contact-agreement-text {
    text-align : center;
    margin-top : 20px;
    line-height: 2;
    font-size  : 1.4rem;
    font-family: "dnp-shuei-gothic-gin-std", sans-serif;
}

.contact-agreement-text a {
    text-decoration: underline;
    transition     : all 0.2s ease;
}

.contact-agreement-check {
    margin-top: 20px;
    text-align: center;
}


/* エラーメッセージの上部を消去 */
div.screen-reader-response {
    display: none;
}

.wpcf7-response-output {
    text-align: center;
    margin-top: 10px;
    font-size : 1.3rem;
}

@media (max-width: 1024px) {

    .wpcf7-form table th {
        display: block;
        width  : 100%;
        padding: 0;
    }

    .wpcf7-form table th p br {
        display: none;
    }

    .wpcf7-form table td {
        display: block;
        width  : 100%;
        padding: 8px 0 30px;
    }

    .wpcf7-form .address td ul .address_num {
        padding-top: 0;
    }
}

@media (max-width: 599px) {
    .entry-sec_cont .entry-message {
        font-size : 1.4rem;
        margin-top: 25px;
    }

    .entry-form_wrapper {
        padding: 45px 0 0;
    }

    .wpcf7-form table th {
        font-size  : 1.4rem;
        font-weight: normal;
    }

    .wpcf7-form .wpcf7-submit {
        min-width: 240px;
    }
}


/*------------------------------------------------
/*プライバシーポリシー
-------------------------------------------------*/

.policy-sec_cont {
    padding: 120px 0 80px;
    margin : 0 auto;
}

.policy-lead-text {
    font-size  : clamp(3rem, 3.8vw, 4.2rem);
    font-weight: 300;
    margin-top: 16px;
}

.policy-sec_cont .intro-cp {
    line-height  : 1.8;
    margin-bottom: 40px;
}

.page-policy_wrapper dl {
    display      : block;
    padding      : 3rem 0;
    align-items  : flex-start;
    border-bottom: solid 1px #e9eaf0;
}

.page-policy_wrapper dl dt {
    width        : 100%;
    padding-right: 1em;
    line-height  : 2.4;
    font-size    : 2rem;
    font-weight  : 300;
}

.page-policy_wrapper dl dd {
    line-height : 2.4;
    border-left : none;
    padding-left: 0;
}

.page-policy_wrapper dl dd p {
    margin-bottom: 20px;
    margin-top   : 20px;
    line-height  : 1.7;
    font-size    : 1.5rem;
}

.page-policy_wrapper dl dd p .policy-use {
    font-size  : 1.8rem;
    display    : block;
    font-weight: bold;
    margin     : 6px 0;
}

.page-policy_wrapper dl dd a {
    color     : #2055af;
    transition: all 0.2s ease;
    color     : #333;
}

/*------------------------------------------------
  /*プライバシーポリシーページ -メディアクエリ-
  -------------------------------------------------*/

@media (max-width: 1024px) {
    .policy-sec_cont {
        padding: 80px 0;
    }

    .page-policy_wrapper {
        padding: 0;
    }

    .page-policy-ttl {
        margin-bottom: 40px;
        font-size    : 2.6rem;
    }

    .page-policy_wrapper dl dt {
        font-size: 2rem;
    }
}


@media (max-width: 599px) {
    .policy-sec_cont {
        padding: 60px 0 0;
    }

    .policy-sec_cont .intro-cp {
        line-height  : 1.8;
        margin-bottom: 30px;
        font-size    : 1.4rem;
    }

    .page-policy_wrapper dl dt {
        font-size: 1.8rem;
    }

    .page-policy_wrapper dl {
        padding: 20px 0;
    }

    .page-policy_wrapper dl dd {
        font-size  : 1.3rem;
        line-height: 2;
    }

    .page-policy_wrapper dl dd p .policy-use {
        font-size: 1.6rem;
    }
}



/*------------------------------------------------
/*pagenaviページナビゲーション
-------------------------------------------------*/

.wp-pagenavi {
    text-align: center;
    font-size : 12px;

    margin-top: 80px;
}

.wp-pagenavi a {
    color: #4a4a4a;
}

.pages {
    margin-right: 20px;
}

.wp-pagenavi .current,
.wp-pagenavi a.page {
    margin       : 0 20px 0 0;
    display      : inline-block;
    border       : solid 1px #eee;
    width        : 40px;
    height       : 40px;
    border-radius: 50%;
    line-height  : 37px;
    text-align   : center;
}

.wp-pagenavi .current {
    border    : none;
    background: #000;
    color     : #fff;
}

.wp-pagenavi a.page:hover {
    background: #000;
    color     : #fff;
}

.wp-pagenavi .first,
.wp-pagenavi .extend {
    margin-right: 10px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    display: none;
}

@media (max-width: 599px) {
    .wp-pagenavi {
        padding-bottom: 60px;
    }
}





/* svg {
    width: 380px;
}

svg.is-active .stroke {
    stroke-dasharray : 1191 1193;
    stroke-dashoffset: 1192;
    animation        : lHbmAxlu_draw 1s ease-in forwards;
    stroke-dashoffset: 1005;
    transition       : 1.4s cubic-bezier(.76, 0, .24, 1);
}

@keyframes lHbmAxlu_draw {
    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes lHbmAxlu_fade {
    0% {
        stroke-opacity: 1;
    }

    94.44444444444444% {
        stroke-opacity: 1;
    }

    100% {
        stroke-opacity: 0;
    }
} */