html {
    scroll-behavior: smooth;
}

[id] {
    scroll-margin-top: 105px;
}


html.page,
body.page {
    background-color: unset;
    overflow: unset;
}

body.page *,
body.page ::before,
body.page ::after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
    word-wrap: break-word;
    line-height: 160%;
}

body.page a {
    -webkit-transition-property: opacity;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

body.page img {
    -webkit-transition-property: opacity;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border: 0;
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
}

a:hover {
    opacity: 0.8;
}




.pconly {
    display: block;
}

.sponly {
    display: none;
}




body.page .main-content {
    opacity: unset;
    visibility: unset;
    transition: unset;
    margin-top: 104px;
}

body.page header {
    background: #1D345B;
    position: fixed;
}

body.page section,
body.page .section {
    width: 1000px;
    margin: 0 auto;
}


.wp-block-columns {
    gap: 5%;
}

/* mega menu サービスのみ */

.mega-panel[data-menu="menu01"] .mega-links {
    display: flex;
    flex-wrap: wrap;
}

#pankz {
    padding: 15px 0;
}

#pankz ul {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    margin: 0;
    padding: 0;
}

#pankz ul li {
    list-style: none;
}

#pankz ul li a {
    text-decoration: none;
    color: #333;
    font-size: 14px;
}

#pankz ul li a:after {
    content: '>';
    margin: 0 10px;
}

#pankz ul li:last-child a {
    pointer-events: none;
}

#pankz ul li:last-child a:after {
    content: unset;
}

#page_main {
    background: url(../img/page/page_main_default.jpg) no-repeat center center;
    background-size: cover;
}

#page_main.depth01 {}

#page_main.depth02 {}

#page_main .inner {
    background: rgba(55, 69, 110, 0.5);
}

#page_main.depth02 #pankz ul li a {
    color: #fff;
}

#page_main .page_main_section {
    padding: 50px 0 100px 0;
}

#page_main .page_main_section h2 {
    color: #fff;
    text-align: center;
    font-size: 44px;
    margin: 0;
}


#page_main.depth01 .page_main_section {
    padding: 70px 0 100px 0;
}


#page_main.depth01 h2 {
    margin-bottom: 0px;
}

#page_main.depth01 .btn_wrap {
    /* display: flex;
    flex-flow: wrap;
    gap: 30px 5%;
    justify-content: center;
    margin-top: 60px; */
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px 5%;
    margin-top: 60px;
}

#page_main.depth01 .btn_wrap .about-button {
    /* width: 30%; */
    width: 80%;
    max-width: 400px;
    margin: 0 auto;
}

#page_main.depth01 .btn_wrap .about-button span.about-button__text {
    width: 100%;
    text-align: center;
    padding: 0 35px;
}





#page_main.depth02 .btn_wrap a {


    position: relative;



    box-shadow: 5px 5px #27acd9;
    transition: 0.3s ease-in-out;
}

#page_main.depth02 .btn_wrap :hover {
    box-shadow: none;
    transform: translate(5px, 5px);
    color: #03BBD5;
}

#page_contents {
    padding: 100px 0;
}

body.page .section-contact {
    background: url(../img/page/page_main_default.jpg) no-repeat center center;
    background-size: cover;
    width: 100%;
}

.title_engmix {
    margin-bottom: 60px;
}

.title_engmix span.jp {
    font-size: 18px;
    display: block;
    font-weight: normal;
}

.title_engmix span.jp:before {
    content: '●';
    color: #FF0200;
    font-size: 22px;
    position: relative;
    top: 0px;
    margin-right: 5px;
}

.title_engmix span.en {
    font-size: 60px;
    text-transform: uppercase;
}

.title_engmix span.en.jptxt {
    font-size: 45px;
}


.title_colorlabel {
    font-size: 26px;
    margin-bottom: 40px;
    color: #093D5D;
}

.title_colorlabel.black {
    color: #333;
}

.title_colorlabel.black.mar20px {
    margin-bottom: 20px;
}

.title_circle {
    font-size: 22px;
    margin-bottom: 30px;
}

.title_circle:before {
    content: '●';
    font-size: 30px;
    position: relative;
    top: 0px;
    margin-right: 5px;
}

.title_center-underline {
    font-size: 38px;
    margin-bottom: 50px;
    text-align: center;
}

.title_center-underline h3 {
    position: relative;
    /* display: inline-block; */
    display: block;
    font-size: 26px;
}

.title_center-underline h3:before {
    content: '';
    position: absolute;
    bottom: -15px;
    display: inline-block;
    width: 50px;
    height: 6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #066FFF;
}

.title_entrytitle {
    margin-bottom: 50px;
}

.title_entrytitle span.date {
    font-size: 16px;
    display: block;
    font-weight: normal;
    color: #919090;
}

.title_entrytitle span.label {
    font-size: 24px;
    margin-bottom: 3px;
    display: block;
}

.title_entrytitle span.category {
    font-size: 12px;
    display: block;
    font-weight: normal;
    color: #9F9C9C;
}


.title_leftborder {
    font-size: 22px;
    margin: 0 0 20px 0;
    border-left: 4px solid #1D9CBF !important;
    padding: 0 0 5px 10px;
}






.title_center38 {
    font-size: 38px;
    text-align: center;
    margin-top: 0;
}



.contents_wrap {
    margin: 0 auto 60px auto;
}

.contents_wrap p:last-child {
    margin-bottom: 0;
}


.contents_wrap94 {
    width: 94%;
    margin: 0 auto 80px auto;
}

.contents_btn_wrap {
    margin: 0 auto 80px auto;
}

.contents_btn_wrap {
    display: flex;
    flex-flow: wrap;
    gap: 20px 5%;
    justify-content: center;

}

.contents_btn_wrap a {
    border: 2px solid #0a4f78;
}


.contents_wrap_100per {
    padding: 100px 0;
    width: 98.9vw;
    margin-left: 50%;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    background: url(../img/page/contents_btn_100per.jpg) repeat-y center top;
    background-size: 100% auto;
    margin-bottom: 80px;
}


dl.dt_leftborder {
    margin-bottom: 40px;
}

dl.dt_leftborder dt {
    font-size: 20px;
    margin: 0 0 15px 0;
    border-left: 4px solid #1D9CBF;
    padding: 0 0 5px 10px;
    font-weight: bold;
}

dl.dt_leftborder dd {
    margin: 0 0 25px 15px;
}

.font_red {
    color: red;
}




/*news*/

.news_list_wrap {
    margin-bottom: 50px;
}

.news_list_wrap dl {
    display: flex;
    flex-flow: wrap;
    gap: 5%;
    border-bottom: 1px solid #747373;
    margin-bottom: 25px;
    padding-bottom: 25px;
}

.news_list_wrap dl dt {
    width: 10%;
    margin: 0;
    padding: 0px 0 0 0;
}

.news_list_wrap dl dd {
    width: 85%;
    margin: 0;
    padding: 0;
}

.news_list_wrap dl dd a {
    color: #333;
    text-decoration: none;

}

.news_list_wrap dl dd a .icon {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
}

.news_list_wrap dl dd a:hover .icon {
    padding-right: 30px;
}


.wp-pagenavi {
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 70px;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: inline-block;
    margin: 0 5px;
    color: #C4C4C4;
    text-decoration: none;
}


.wp-pagenavi a {
    -webkit-transition-property: opacity;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;

}

.wp-pagenavi a:hover {
    color: #333;

}

.wp-pagenavi .current {
    color: #093D5D;
}

.wp-pagenavi a.nextpostslink {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    color: #093D5D;
}

.entry_back_home {
    text-align: center;
}

.entry_back_home a {
    color: #333;
}

.entry_back_home a .icon {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
}

.entry_back_home a:hover .icon {
    padding-right: 30px;
}


.title_entrytitle.detail {
    width: 94%;
    margin: 0 auto 40px auto;
}

.works_detail_wrap {
    width: 94%;
    margin: 0 auto 50px auto;
    display: flex;
    flex-flow: wrap;
    gap: 30px 5%;
}

.works_detail_wrap .left {
    width: 55%;
}

.works_detail_wrap .right {
    width: 40%;
}

.works_detai_keii {
    border: 1px solid #1D9CBF !important;
    margin-bottom: 40px;
}

.works_detai_keii span.label {
    background: #1D9CBF;
    color: #fff;
    font-size: 18px;
    padding: 5px 15px;
    display: inline-block;
}

.works_detai_keii div.text {
    padding: 20px;
}

.works_subbox {
    background: #FAFAFA;
    padding: 35px;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
}

.works_subbox dl {
    color: #093D5D;
    font-size: 14px;
}

.works_subbox dl dt {
    margin-bottom: 10px;
}

.works_subbox dl dd {
    margin-bottom: 10px;
}

.works_subbox dl dd dl.taisei {
    display: flex;
    flex-flow: wrap;
    gap: 5%;
}

.works_subbox dl dd dl.taisei dt {
    width: 30%;
    margin-bottom: 10px;
}

.works_subbox dl dd dl.taisei dd {
    width: 65%;
    padding: 0;
    margin: 0 0 10px 0;
}

.news_detail_wrap {
    width: 94%;
    margin: 0 auto 50px auto;
}







/*company*/




.company_block01 .text {
    font-size: 110%;
    line-height: 180%;
}

.about_block01 .text .name {
    font-size: 90%;
    line-height: normal;
    text-align: right;
}



.company_block02 h4 {
    font-size: 38px;
    text-align: center;
    margin-top: 0;
}

.company_block02 h4 .red {
    color: #FF0200;
}

.company_block02 .text {
    width: 86%;
    margin: 0 auto 50px auto;
}

.company_block02 .shimei {
    width: 94%;
    margin: 0 auto 0 auto;
    background: #fff;
    text-align: center;
    padding: 40px;
    box-shadow: 0px 0px 6px 2px #eee;
    -moz-box-shadow: 0px 0px 6px 2px #eee;
    -webkit-box-shadow: 0px 0px 6px 2px #eee;
}



.company_block03 dl dt {
    font-size: 24px;
    color: #093D5D;
    margin-bottom: 15px;
}

.company_block03 dl dd {
    margin-bottom: 30px;
    padding-left: 10px;
}


.about_block01 {
    margin-bottom: 70px;
}

.about_block01 dl {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #747373;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
}

.about_block01 dl dt {
    width: 30%;
    text-align: center;
    color: #093D5D;
    font-size: 18px;
}

.about_block01 dl dd {
    width: 60%;
    text-align: left;
    color: #093D5D;
    font-size: 16px;
}

.about_block01 dl dd ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.about_block01 dl dd ul li {
    margin-bottom: 5px;
}

.about_block01 dl dd ul li:last-child {
    margin-bottom: 0px;
}

.about_block01 dl dd ul.li_disc li {
    list-style: disc;
    margin-left: 20px;
}





.about_block01 dl dd a .icon {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function:
}

.about_block01 dl dd a:hover .icon {
    padding-right: 30px;
}

.about_block02 h3 {
    font-size: 38px;
    text-align: center;
    margin-top: 0;
}


.about_block02 .history_wrap dl {
    width: 70%;
    margin: 0 auto;
}

.about_block02 .history_wrap dl dt {
    font-size: 24px;
}

.about_block02 .history_wrap dl dd {
    border-left: 4px solid #1D9CBF;
    padding: 10px 0 10px 50px;
    margin: 0 0 0 25px;
}

.about_block02 .history_wrap dl dd p {
    margin: 0 0 10px 0;
    display: flex;
    flex-flow: wrap;
}

.about_block02 .history_wrap dl dd p:last-child {
    margin: 0 0 0px 0;
}

.about_block02 .history_wrap dl dd p span.date {
    width: 50px;
    text-align: right;
    margin-right: 10px;
}

.about_block02 .history_wrap dl dd p span.label {
    text-indent: -20px;
    margin-left: 20px;
}

.about_block02 .history_wrap dl dd p span.label:before {
    content: '-';
    color: #8E8B8B;
    margin-right: 10px;
}


.about_block03 .lead {
    margin-bottom: 20px;
}



.about-block03_h4,
.about-block03_photo-wrap h4 {
    font-size: 20px;
    margin: 0 0 20px 0;
}

.about-block03_photo-wrap h5 {
    background: #C0E38D;
    border-radius: 5px;
    padding: 5px 10px;
    text-align: center;
    font-size: 17px;
}

.about-block03_photo-wrap p.about-block03_link a {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function:
}


.about-block03_photo-wrap p.about-block03_link a:hover {
    padding-right: 30px;
}

.company_info .map_wrap {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    /* 16:9 */
    margin-top: 20px;
}

.company_info .map_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}


.vision-block02-h {
    font-size: 22px;
    width: 85%;
    margin: 0 auto 20px auto;
    color: #093D5D;
}

.vision-block02 {
    width: 85%;
    margin: 0 auto 50px auto;
}



.vision_block03 .travel_wrap {
    gap: 30px 5%;
    display: flex;
    flex-flow: wrap;
}

.vision_block03 .travel_wrap .box {
    background: #fff;
    width: calc(95% / 2);
    padding: 25px;

}

.vision_block03 .travel_wrap .box h5 {
    font-size: 18px;
    margin: 0 0 20px 0;
}


.wp-block-columns.service-block01 {
    border: 1px solid #093D5D !important;
    margin-bottom: 60px;
    padding: 30px 80px 30px 40px;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
    display: flex;
    flex-flow: wrap;
    align-items: center !important;
}

.service-block01 .wp-block-column:first-child {
    text-align: center;
}

.service-block01 img {
    max-height: 200px;
    width: auto;
}

.service-block01 h4 {
    margin-bottom: 0px;
}


.service-lead {
    margin-bottom: 30px;
}



.contents_wrap_100per.service_block02 {
    background: #FAFAFA;
    margin-bottom: 0;
}

.service_block02 h3 {
    font-size: 38px;
    text-align: center;
    margin: 0 0 10px 0;
}

.service_block02 p.lead {
    text-align: center;
}

.service_block02 p.lead {
    text-align: center;
}


.service_block02 .onayami_wrap {
    display: flex;
    flex-flow: wrap;
    margin: 0 0 40px 0;
    gap: 30px 5%;
}

.service_block02 .onayami_wrap .box {
    width: calc(90% / 3);
}

.service_block02 .onayami_wrap .box .wrap {
    background: #fff;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
    padding: 30px;
    font-size: 18px;
    text-align: center;
    display: flex;
    min-height: 120px;
    align-items: center;
    justify-content: center;
}

.service_block02 .flow_wrap {
    background: #fff;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
    padding: 30px;
    display: flex;
    flex-flow: wrap;
    gap: 20px 3%;
    margin-bottom: 60px;
}

.service_block02 .flow_wrap .box {
    width: calc(82% / 3);
}

.service_block02 .flow_wrap .box.yaji {
    width: 3%;
    display: flex;
    align-items: center;
}

.service_block02 .flow_wrap .box .step {}

.service_block02 .flow_wrap .box .step .label {
    border: 1px solid #093D5D;
    border-radius: 5px;
    padding: 5px 20px;
    ;
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
    display: inline-block;
    min-width: 140px;
}

.service_block02 .flow_wrap .box .title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 0;
}

.service_block02 ul {
    margin: 0 0 0 0;
}

.service_block02 ul li {
    margin-bottom: 5px;
}

.service_block02 ul.mar30px {
    margin-bottom: 30px;
}

.service_block02 ul.dot {}




.service_block02 .teian_container {
    background: #fff;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
    padding: 30px;
    margin-bottom: 40px;
}

.service_block02 .teian_container p {
    margin-bottom: 40px;
}

.service_block02 .teian_wrap {
    display: flex;
    flex-flow: wrap;
    border-bottom: 1px solid #AFACAC;
    padding-bottom: 30px;
    gap: 20px 3%;
    width: 90%;
    margin: 0 auto 30px auto;
}

.service_block02 .teian_wrap:last-child {
    border-bottom: none;
    margin: 0 auto 0px auto;
}



.service_block02 .teian_wrap .box {}

.service_block02 .teian_wrap .box.teian {
    width: calc(91% / 2);
    display: flex;
    flex-flow: wrap;
    align-items: center;
}

.service_block02 .teian_wrap .box.kaizen {
    width: calc(91% / 2);
}

.service_block02 .teian_wrap .box.yaji {
    width: 3%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service_block02 .teian_wrap .box.yaji img {
    width: 80%;
}

.service_block02 .teian_wrap .box.teian .num {
    width: 10%;
}

.service_block02 .teian_wrap .box.teian .text {
    width: 90%;
}

.service_block02 .teian_wrap.title {
    border: none;
    margin-bottom: 0;
}

.service_block02 .teian_wrap.title .box {
    font-weight: bold;
    font-size: 19px;
    padding: 5px 10px;
    text-align: center;
}


.service_block02 .teian_wrap.title .box.teian {
    text-align: center;
    background: #CAD7FF;
}

.service_block02 .teian_wrap.title .box.kaizen {
    background: #1D9CBF;
    color: #fff;

}

.service_block02 .soudan_wrap {
    width: 90%;
    margin: 0 auto 0 auto;
}

.service_block02 .soudan_wrap h5 {
    font-size: 22px;
    margin-bottom: 15px;
}



.service_block02 .team_wrap {
    background: #fff;
    box-shadow: 3px 3px 6px 2px #eee;
    -moz-box-shadow: 3px 3px 6px 2px #eee;
    -webkit-box-shadow: 3px 3px 6px 2px #eee;
    padding: 30px;
    margin-bottom: 60px;
}

.service_block02 .team_wrap.flex {
    display: flex;
    flex-flow: wrap;
    gap: 20px 5%;
}

.service_block02 .team_wrap.flex .photo {
    order: 2;
    width: 35%;
}

.service_block02 .team_wrap.flex .text {
    order: 1;
    width: 60%;
}

.service_block02 .team_wrap.flex .text .link {
    text-align: right;
}

.service_block02 .team_wrap.flex .text .link a {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function:
}

.service_block02 .team_wrap.flex .text .link a:hover {
    padding-right: 30px;
}



.migration-block01.btn_wrap {
    margin-bottom: 80px;
    display: flex;
    flex-flow: wrap;
    gap: 20px 5%;
    justify-content: center;
}

.migration-block01.btn_wrap a {
    position: relative;
    box-shadow: 5px 5px #27acd9;
    transition: 0.3s ease-in-out;
    border: 1px solid #1D9CBF;
}



ul.li_num li {
    list-style: none !important;
    margin: 0 0 10px 20px;
    text-indent: -20px;
}

ul.li_num li:nth-child(1):before {
    content: '①' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(2):before {
    content: '②' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(3):before {
    content: '③' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(4):before {
    content: '④' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(5):before {
    content: '⑤' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(6):before {
    content: '⑥' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(7):before {
    content: '⑦' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(8):before {
    content: '⑧' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(9):before {
    content: '⑨' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(10):before {
    content: '⑩' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(11):before {
    content: '⑪' !important;
    margin-right: 5px;
}

ul.li_num li:nth-child(12):before {
    content: '⑫' !important;
    margin-right: 5px;
}


ul.li_disc li ul.li_decimal li,
ul.li_num li ul.li_decimal li,
ul.li_kome li ul.li_decimal li,
ul.li_decimal li ul.li_decimal li {
    list-style: decimal !important;
    margin-top: 10px;
}

ul.li_decimal li {
    list-style: decimal !important;
    margin: 0 0 10px 20px;
}

.mar0px {
    margin-bottom: 0px !important;
}

.mar5px {
    margin-bottom: 5px !important;
}

.mar10px {
    margin-bottom: 10px !important;
}

.mar15px {
    margin-bottom: 15px !important;
}

.mar20px {
    margin-bottom: 20px !important;
}

.mar25px {
    margin-bottom: 25px !important;
}

.mar30px {
    margin-bottom: 30px !important;
}

.mar35px {
    margin-bottom: 35px !important;
}

.mar40px {
    margin-bottom: 40px !important;
}

.mar45px {
    margin-bottom: 45px !important;
}

.mar50px {
    margin-bottom: 50px !important;
}

.mar60px {
    margin-bottom: 60px !important;
}

.mar70px {
    margin-bottom: 70px !important;
}

.mar80px {
    margin-bottom: 80px !important;
}

.mar90px {
    margin-bottom: 90px !important;
}

.mar100px {
    margin-bottom: 100px !important;
}

.mar110px {
    margin-bottom: 110px !important;
}

.mar120px {
    margin-bottom: 120px !important;
}

.mar130px {
    margin-bottom: 130px !important;
}

.mar140px {
    margin-bottom: 140px !important;
}

.mar150px {
    margin-bottom: 150px !important;
}


.top-mar70px {
    margin-top: 70px;
}





ul.li_num.mar70px {
    margin-bottom: 70px;
}


.service_block02.vision_block03 .teian_wrap {
    gap: 20px 0%;
}

.service_block02.vision_block03 .teian_wrap .box.teian {
    width: 45%;
}

.service_block02.vision_block03 .teian_wrap .box.kaizen {
    width: 55%;
}

.migration-block01-h5 {
    font-size: 22px;
    margin: 0 0 20px 0;
}

.migration-block01-h6 {
    font-size: 18px;
    margin: 0 0 20px 0;
}


.vision_block04-inbox {
    width: 94%;
    margin: 0 auto;
}

.migration_list01 {
    display: flex;
    flex-flow: wrap;
    gap: 20px 8%;
    margin: 30px auto 0;
    padding: 0;
    width: 94%;
}

.migration_list01 li {
    width: 22%;
    list-style: none;
    margin: 0;
    padding: 0;
}

.migration_list01 li a {
    border: 1px solid #093D5D;
    text-align: center;
    display: block;
    background: url(../img/page/news_link_icon.svg) no-repeat right 5px bottom 5px;
    text-decoration: none;
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80px;
}

.migration_list02 {
    display: flex;
    flex-flow: wrap;
    gap: 20px 3%;
    margin: 30px auto 0;
    padding: 0;
    width: 94%;
}

.migration_list02 li {
    width: 14%;
    list-style: none;
    margin: 0;
    padding: 0;
    background: #E0E0E0;
    font-weight: bold;
    text-align: center;
    padding: 5px;
}

.migration-table {
    border: 1px solid #ccc;
    border-collapse: collapse;
    margin: 30px auto 50px;
    width: 94%;
}

.migration-table th {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
}

.migration-table td {
    border: 1px solid #ccc;
    padding: 10px;
}

.migration-table th:nth-child(1) {
    width: 35%;
}

.migration-table th:nth-child(2) {
    width: 45%;
}

.migration-table th:nth-child(3) {
    width: 20%;
}

.migration-table td:nth-child(3) {
    text-align: center;
}

.migration-table.layout01 th {
    background: #E1F1FE;
}

.migration-table.layout02 th {
    background: #F9DCB2;
}

.migration-table.layout03 th {
    background: #A3CEDC;
}



.migration-akitable {
    border: 1px solid #ccc;
    border-collapse: collapse;
    margin: 30px auto 10px;
    width: 94%;
}

.migration-akitable th {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
    background: #E1F1FE;
}

.migration-akitable td {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
}






/* メインビジュアルエリア */
.strengths-block02 .main-visual {
    position: relative;
    height: 600px;
    /* 全体の高さ */
    margin: 0 auto;
}

/* 円の共通設定 */
.strengths-block02 .circle {
    position: absolute;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: transform 0.3s ease;
}

/* 中心ロゴの設定 */
.strengths-block02 .center-logo {
    width: 280px;
    height: 280px;
    background: linear-gradient(150deg, #1D9CBF, #17639F);
    /* 青ベース */
    /*border: 8px solid #00a0e9;*/
    /* 縁取り */
    top: 23%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    overflow: hidden;
}

.strengths-block02 .center-logo img {
    width: 80%;
    height: auto;
}

/* 各カテゴリーの円 */
.strengths-block02 .item {
    width: 220px;
    height: 220px;
    background-color: rgba(255, 255, 255, 0.85);
    color: #333;
    padding: 20px;
    box-sizing: border-box;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.strengths-block02 .item h4 {
    margin: 0 0 10px 0;
    color: #005a8d;
    font-size: 24px;
}

.strengths-block02 .item ul {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: left;
    font-size: 80%;
    line-height: 1.5;
}

.strengths-block02 .item ul li::before {
    content: "・";
}

.strengths-block02 .item ul li {
    text-indent: -12px;
    margin-left: 15px;
}

/* 配置の調整 (中心からの位置) */
.strengths-block02 .pos-top-left {
    top: 5%;
    left: 5%;
}

.strengths-block02 .pos-top-right {
    top: 5%;
    right: 5%;
}

.strengths-block02 .pos-bottom-left {
    bottom: 15%;
    left: 10%;
}

.strengths-block02 .pos-bottom-right {
    bottom: 15%;
    right: 10%;
}

.strengths-block02 .pos-bottom-center {
    bottom: 0%;
    left: 50%;
    transform: translateX(-50%);
}

/* 下部のその他バー */
.strengths-block02 .others {
    display: flex;
    background-color: rgba(255, 255, 255, 0.7);
    margin-top: 40px;
    border-radius: 4px;
    overflow: hidden;
    color: #1a3a40;
    font-weight: bold;
    width: 80%;
    margin: 35px auto 0;
    justify-content: center;
    align-items: center;
}

.strengths-block02 .others-label {
    /*background-color: #a0c4cc;*/
    padding: 15px 40px;
    flex-shrink: 0;
    color: #093D5D;
}

.strengths-block02 .others-content {
    padding: 15px;
    font-size: 0.9rem;


}

/* ホバー演出 */
/*
                    .strengths-block02 .item:hover {
                        transform: scale(1.05);
                        background-color: rgba(255, 255, 255, 1);
                    }

                    .strengths-block02 .pos-bottom-center:hover {
                        transform: translateX(-50%) scale(1.05);
                    }
*/



.service-block01.strengths-block01 figure.wp-block-image.size-full {
    position: relative;
    top: -6vh;
    margin-bottom: -6vh;
}


.service-block01.strengths-block01 figure.wp-block-image.size-full {
    position: relative;
    top: -6vh;
    margin-bottom: -6vh;
}

.service-block01.strengths-block01 figure.wp-block-image.size-full img {
    max-height: 230px;
    width: auto;
}


.wp-block-columns.service-block01.strengths-block01 {
    align-items: unset !important;
}


.contents_wrap_100per.strengths-block02 {
    background: url(../img/page/strengths-block02_bg.jpg) repeat-y center top;
    background-size: 100% auto;
}

.contents_wrap_100per.strengths-block02 h3 {
    font-size: 38px;
    text-align: center;
    margin: 0 0 10px 0;
    color: #fff;
}

.contents_wrap_100per.strengths-block02 p.leadtext {
    text-align: center;
    color: #fff;
    margin: 0 0 40px 0;
}


.strengths-block03.wp-block-columns {
    align-items: center !important;
    background: #FAFAFA;
    padding: 30px;
}

.strengths-block03 .is-layout-flow:first-child {
    display: flex;
    flex-flow: column;
    align-items: center;
}

.strengths-block03 .is-layout-flow:first-child img {
    max-height: 160px;
    width: auto;
}

.strengths-block03 p.toroku {
    font-weight: bold;
}

.strengths-block03 p.toroku span.num {
    font-size: 20px;
}

a.dl_link_btn {
    border: 2px solid #1D9CBF;
    padding: 15px 50px;
    text-decoration: none;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    min-width: 360px;
    border-radius: 5px;
}

a.dl_link_btn .icon {
    background: url(../img/page/dl_icon.svg) no-repeat right center;
    text-decoration: none;
    padding-right: 40px;
    display: inline-block;
}



.se-rates-block01.wp-block-columns {
    align-items: center !important;
    background: #FAFAFA;
    padding: 30px;
    margin-bottom: 70px;
}

.se-rates-block01 .is-layout-flow:first-child {
    text-align: center;
    order: 2;
}

.se-rates-block01 .is-layout-flow:first-child img {
    max-height: 250px;
    width: auto;
}

.se-rates-block01 .is-layout-flow:nth-child(2) {
    order: 1;
}



.price-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    color: #333;
    line-height: 1.6;
    font-size: 13px;
}

.price-table th {
    background-color: #DDF1FF;
    /* 指定カラー */
    border: 1px solid #ccc;
    padding: 12px 8px;
    text-align: center;
    font-weight: bold;
}

.price-table td {
    border: 1px solid #ccc;
    padding: 10px 8px;
    vertical-align: middle;
}

/* 役割列の背景色 */
.role-cell {
    background-color: #EFEFEF;
    /* 指定カラー */
    font-weight: bold;
    text-align: center;
}

/* 数値列のスタイル */
.price-cell {
    text-align: right;
    font-weight: bold;
    white-space: nowrap;
}

/* 中央揃えのセル */
.center-cell {
    text-align: center;
}




.comparison-table {
    width: 100%;
    padding: 40px;
    margin-bottom: 30px;
    border-collapse: collapse;
    font-family: "Hiragino Kaku Gothic ProN";
    color: #333;
}

.comparison-table th {
    background-color: #DDF1FF;
    /* 指定カラー */
    border: 1px solid #ccc;
    padding: 12px;
    text-align: center;
    font-weight: bold;
}

.comparison-table td {
    border: 1px solid #ccc;
    padding: 12px;
    text-align: center;
    /* 記号のサイズ感を統一するための設定 */
    font-size: 18px;
    line-height: 1;
}

.feature-cell {

    text-align: left;
    width: 20%;
    font-size: 15px !important;
}

/* 評価に応じた背景色の工夫 */
.eval-excellent {
    background-color: #00ac97;
    font-weight: bold;
    color: #fff;
}

.eval-good {
    background-color: #fff799;
}

.eval-average {
    background-color: #ffffff;
    /* 普通: 白 */
    color: #666;
}



.se-rates-block02 {
    margin-bottom: 50px;
}

.se-rates-block02 .wp-block-column {
    background: #FAFAFA;
    padding: 30px 15px;
}

.se-rates-block02 .wp-block-column h5 {
    color: #093D5D;
    font-size: 95%;
    text-align: center;
    margin-top: 0;
}

.se-rates-block02 ul.wp-block-list {
    margin: 0 0 0 20px;
    padding: 0;
    font-size: 85%;
}

.se-rates-block02 ul.wp-block-list li {
    margin-bottom: 5px;
}


.tech-structure_block01 {
    margin: 50px auto 70px;
    width: 70%;
}


.tech-structure_block02 {
    background: url(../img/page/tech-structure_img02.png) no-repeat center center;
    background-size: auto 100%;
}

.tech-structure_block02 p {
    margin: 0 0 50px 0;
}



a.link-normal .icon {
    background: url(../img/page/news_link_icon.svg) no-repeat right center;
    padding-right: 25px;
    -webkit-transition-property: padding;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
}

a.link-normal:hover .icon {
    padding-right: 30px;
}



.title_h3-center {
    font-size: 38px;
    text-align: center;
    margin: 0 0 10px 0;
}

.title_h4-center {
    font-size: 20px;
    text-align: center;
    margin: 0 0 40px 0;
    font-weight: normal;
}


.title_left22 {
    font-size: 22px;
    margin: 0 0 20px 0;
}

.div94 {
    width: 94%;
    margin-right: auto;
    margin-left: auto;
}



.development-block02 {
    width: 90%;
    margin: 30px auto 70px;
}


.development-block03 {
    margin-bottom: 70px;
}

.development-block03 {
    background: #FAFAFA;
    padding: 30px;
}

.development-block03 ul {
    margin-bottom: 30px;
}


.contents_wrap_100per.features_block02 {
    background: #FAFAFA;
}




.security-block01 .privacy-notice {
    max-width: 880px;
    margin: 24px auto;
    padding: 20px;
    border: 1px solid #e6e8ef;
    border-radius: 14px;
    background: #fff;
    color: #1f2937;
    font-family: system-ui, -apple-system, "Segoe UI", "Hiragino Kaku Gothic ProN",
        "Noto Sans JP", "Meiryo", sans-serif;
    line-height: 1.75;
}

.security-block01 .privacy-notice h2 {
    margin: 0 0 14px;
    font-size: 1.35rem;
    letter-spacing: 0.02em;
}

.security-block01 .notice-sections {
    margin: 0;
    padding-left: 1.2rem;
}

.security-block01 .section {
    margin-bottom: 15px;
}

.security-block01 .section h4 {
    margin: 0 0 10px;
    font-size: 1.05rem;
}

.security-block01 .lead {
    margin: 0 0 10px;
    color: #374151;
}

.security-block01 .bullets,
.security-block01 .steps {
    margin: 0 0 20px 0;
    padding-left: 1.2rem;
}

.security-block01 .bullets li,
.security-block01 .steps li {
    margin: 6px 0;
}

.security-block01 .steps li,
.security-block01 .bullets {
    list-style-type: upper-roman;
}


.security-block01 .subsections {
    margin: 10px 0 10px;
    padding-left: 0;
    list-style: none;
}

.security-block01 .subsections>li {
    margin: 10px 0;
}

.security-block01 .label {
    font-weight: 700;
}

.security-block01 .value {
    margin-left: 6px;
}

.security-block01 .block {
    margin-top: 2px;
}

.security-block01 .text {
    margin: 15px 0;
}

.security-block01 .note {
    margin: 10px 0 0;
    font-size: 0.92rem;
    color: #4b5563;
}

.security-block01 .steps .note {
    display: inline-block;
    margin-top: 6px;
}





.security-uketuke {
    background: #fff;
    border: 1px solid #093D5D !important;
    padding: 20px;
    display: flex;
    flex-flow: wrap;
    gap: 20px 5%;
}


.contactform_wrap {
    padding: 30px;
    box-shadow: 0px 0px 10px 10px #F7F5FF -moz-box-shadow:0px 0px 10px 10px #F7F5FF;
    -webkit-box-shadow: 0px 0px 10px 10px #F7F5FF;
}

.contactform_wrap .form_area dl {
    display: flex;
    flex-flow: wrap;
    border-bottom: 1px solid #747373;
    margin-bottom: 20px;
    padding-bottom: 20px;
    gap: 20px 5%;
}

.contactform_wrap .form_area dl:last-child {
    border-bottom: none;
}

.contactform_wrap .form_area dl dt {
    font-weight: bold;
    width: 30%;
}

.contactform_wrap .form_area dl dd {
    width: 60%;
}

.contactform_wrap .form_area dl dt span.label {
    border-radius: 5px;
    padding: 5px 10px;
    color: #fff;
    display: inline-block;
}

.contactform_wrap .form_area dl dt span.label.hissu {
    background: #F43A3A;
}

.contactform_wrap .form_area dl dt span.label.nini {
    background: #C07EF5;
}

.contactform_wrap .form_area dl dt span.name {
    padding: 10px 15px;
    display: inline-block;
}

.contactform_wrap .form_area dl dt span.normal {
    padding: 10px 15px;
    display: inline-block;
    font-weight: normal;
    margin-left: 10px;
}


.contactform_wrap .form_area dl dd input,
.contactform_wrap .form_area dl dd select,
.contactform_wrap .form_area dl dd textarea {
    border: 1px solid #ccc;
    padding: 10px 15px;
}

.contactform_wrap .form_area dl dd.text input {
    width: 80%;
}

.contactform_wrap .form_area dl dd.text textarea {
    width: 100%;
}


.contactform_wrap .form_area dl dd.radio,
.contactform_wrap .form_area dl dd.check {
    padding: 10px 0px;
}

.contactform_wrap .form_area dl dd .wpcf7-radio,
.contactform_wrap .form_area dl dd .wpcf7-checkbox {
    display: flex;
    flex-flow: wrap;
    gap: 15px 5%;
    width: 100%;
}

.contactform_wrap .form_area p.pp {
    text-align: center;
    margin-bottom: 40px;
}

.contactform_wrap .form_area p.send {
    text-align: center;
}

.contactform_wrap .form_area p.send input {
    background: #fff;
    font-size: 18px;
    padding: 20px;
    border: 2px solid #9D4EDD;
    border-radius: 100px;
    font-weight: bold;
    min-width: 320px;
}

.contactform_wrap .form_area p.send input:hover {
    background: #F7F5FF;
    cursor: pointer;
}

.screen-reader-response,
.wpcf7-response-output {
    text-align: center;
    color: #ff0000;
    font-weight: bold;
}

.screen-reader-response ul,
.wpcf7-response-output ul {
    display: flex;
    flex-flow: column;
    justify-content: center;
    display: none;
}

.screen-reader-response ul li,
.wpcf7-response-output ul li {
    list-style: none;
}


.contactform_image {
    text-align: center;
}

.contactform_image img {
    max-width: 70% !important;
}

.contactform_wrap .form_area dl dd span.wpcf7-not-valid-tip {
    display: block;
    font-weight: bold;
    font-size: 90%;
    color: #ff0000;
    margin-top: 5px;
}




/*採用*/




.contents_wrap_100per.recruit_block01 {
    background: url(../img/page/recruit_bg-right.jpg) no-repeat top right;
    background-size: 60% auto;
    padding: 100px 0 50px 0;
}

.contents_wrap_100per.recruit_block01 h3 {
    font-size: 48px;
    margin: 0 0 50px 0;
}

.recruit_block02 {
    text-align: center;
    background-image: url(../img/page/recruit-top_img02.png), url(../img/page/recruit-top_img03.png);
    background-repeat: no-repeat, no-repeat;
    background-position: left center, right center;
    background-size: 20% auto, 20% auto;
    padding: 0 0 70px 0;
    margin-bottom: 30px;
}

.recruit_block02 h3 {
    font-size: 44px;
    margin-bottom: 50px;
}

.recruit_block02 p {
    font-size: 18px;
    line-height: 160%;
}


.contents_wrap_100per.recruit_block03 {
    background: url(../img/page/recruit_bg-left.jpg) no-repeat top left;
    background-size: 60% auto;
    padding: 100px 0 50px 0;
}

.contents_wrap_100per.recruit_block03 .wraps {
    display: flex;
    flex-flow: wrap;
    gap: 30px 5%;
}

.contents_wrap_100per.recruit_block03 .wraps .img {
    width: 40%;
    order: 2;
}

.contents_wrap_100per.recruit_block03 .wraps .text {
    width: 55%;
    order: 1;
}

.rec_btn_wraps {
    display: flex;
    gap: 20px 5%;
}

.rec_btn_wraps a {
    padding: 7px 7px 7px 40px;
    color: #fff;
    text-decoration: none;
    display: flex;
    flex-flow: wrap;
    font-size: 26px;
    font-weight: bold;
    border-radius: 100px;
    align-items: center;
}


.rec_btn_wraps .text {
    order: 1 !important;
    width: calc(100% - 53px) !important;
    font-size: 22px;
}

.rec_btn_wraps .arrow {
    order: 2;
    width: 53px;
}

.rec_btn_wraps a.shinsotsu {
    background: #066FFF;
}

.rec_btn_wraps a.tyuto {
    background: #9D4EDD;
}

.rec_btn_wraps a.normal {
    background: #FFFFFF;
    color: #333;
    border: 1px solid #9D4EDD;
}


.rec_btn_wraps.column1 {
    flex-flow: column;
}

.rec_btn_wraps.column1 a {
    width: 80%;
}


.rec_btn_wraps.column2 {
    flex-flow: wrap;
}

.rec_btn_wraps.column2 a {
    width: calc(95% / 2);
}


.contents_wrap_100per.recruit_block04 {
    background: #F8F5FF;
    padding: 70px 0 70px 0;
}

.recruit_block04 h2 {
    font-size: 44px;
    margin: 0 0 10px 0;
    text-align: center;
}

.recruit_block04 h3 {
    font-size: 22px;
    margin: 0 0 50px 0;
    text-align: center;
}

.recruit_block04 .wraps {
    display: flex;
    flex-flow: wrap;
    gap: 20px 5%;
    margin-bottom: 30px;
}

.recruit_block04 .wraps .box {
    width: calc(90% / 3);
}

.recruit_block04 .wraps .box .photo {
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 15px;
}

.recruit_block04 .wraps .box .text {
    width: 94%;
    margin: 0 auto;
}

.recruit_block04 .wraps .box .text h5 {
    font-size: 22px;
    margin: 0 0 20px 0;
}

.recruit_block04 .wraps .box .text p {
    font-size: 15px;
}

.recruit_block04 .rec_btn_wraps.column1 {
    margin: 0 auto 0 auto;
    width: 50%;
}

.recruit_block04 .rec_btn_wraps.column1 a {
    margin: 0 auto 0 auto;
}


.contents_wrap_100per.recruit_block05 {
    background: url(../img/page/recruit_bg-right.jpg) no-repeat top right;
    background-size: 60% auto;
    padding: 0;
}



.recruit_block05 h2 {
    font-size: 44px;
    margin: 0 0 40px 0;
    text-align: center;
}

.faq_accordion {}

.faq_accordion details {
    display: block;
    background: #fff;
    border-radius: 12px;
    padding: 10px 20px;
    margin-bottom: 25px;
    border: 1px solid #1D345B;
}

.faq_accordion details:hover {
    background: #F8F5FF;
}


.faq_accordion .faq summary span.wrap {
    display: flex;
    flex-flow: wrap;
    position: relative;
    align-items: center;
}

.faq_accordion .faq summary span.wrap:before {
    content: "＋";
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 25%;
    color: #9D4EDD;
}

.faq_accordion details.faq[open] summary span.wrap:before {
    content: "×";
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 25%;
    color: #9D4EDD;
    font-size: 18px;
}


.faq_accordion .faq summary span.wrap .label {
    width: 5%;
    text-align: center;
    font-size: 33px;
    color: #9D4EDD;
    padding: 7px;
    font-weight: bold;
}

.faq_accordion .faq summary span.wrap .title {
    width: calc(95% - 20%);
    padding: 7px;
    font-weight: bold;
    font-size: 110%;
}


.faq_accordion .faq .ans {
    color: #333;
    padding: 0 5% 30px;
}

.faq_accordion .faq .ans p:last-child {
    margin-bottom: 0;
}

.faq_accordion .faq summary {
    cursor: pointer;
    list-style: none;
    border-radius: 10px;
    color: #333;
}


.faq_accordion .faq summary::-webkit-details-marker {
    display: none;
}


#page_main.recruit_main {
    background: url(../img/page/recruit-top_main.jpg) no-repeat center center;
    background-size: cover;
}

#page_main.recruit_main .inner {
    background: none;
}

#page_main.recruit_main .page_main_section {
    display: flex;
    flex-flow: wrap;
    gap: 30px 5%;
    width: 1200px;
}

#page_main.recruit_main .page_main_section .right {
    order: 2;
    width: 45%;
}

#page_main.recruit_main .page_main_section .left {
    order: 1;
    width: 50%;
}

#page_main.recruit_main .page_main_section .left .img {
    width: 80%;
    margin: 0 0 40px 0;
}

#page_main.recruit_main .page_main_section .right h1 {
    margin: 0 0 0px 0;
    font-size: 30px;
}

#page_main.recruit_main .page_main_section .right h2 {
    margin: 0 0 0px 0;
    font-size: 70px;
    color: #333;
    text-align: left;
}

#page_main.recruit_main .page_main_section .right h3 {
    margin: 0 0 20px 0;
    font-size: 45px;
}

#page_main.recruit_main .page_main_section .right p {
    margin: 0 0 0 0;
    font-size: 20px;
}



body.page .section-contact.recruit-contact {
    background: #F8F5FF url(../img/page/recruit_bg-left_toka.png) no-repeat left center;
    background-size: cover;
    width: 100%;
    padding: 40px 0;
}

.section-contact.recruit-contact .section-inner {
    padding: 40px;
    background: rgba(255, 255, 255, 0.8);

    border-radius: 30px;
}

.section-contact.recruit-contact .block-heading__en.contact,
.section-contact.recruit-contact .top-contact-lead {
    color: #222;
}

.section-contact.recruit-contact .contact-left {
    width: 35%;
}

.section-contact.recruit-contact .contact-right {
    width: 55%;
}

.section-contact.recruit-contact .contact-right a.about-button.contact {
    border: 1px solid #1D345B;
    padding: 7px 7px 7px 40px;
    color: #222;
    text-decoration: none;
    display: flex;
    flex-flow: wrap;
    font-size: 26px;
    font-weight: bold;
    border-radius: 100px;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}

.section-contact.recruit-contact .contact-right a.about-button.contact .about-button__arrow {
    position: static;
    right: 0;
    bottom: 0;
    width: 40px;
    height: 40px;
    background: unset;
    display: flex;
    align-items: center;
    justify-content: center;
}


/*新卒採用*/


#page_main.recruit_main.detail .right {}

#page_main.recruit_main.detail .right h1 {
    margin: 0 0 20px 0;
    font-size: 45px;
}

#page_main.recruit_main.detail .right p {
    margin: 0 0 30px 0;
    font-size: 22px;
}

#page_main.recruit_main.detail .right .rec_btn_wraps {}

#page_main.recruit_main.detail .right .rec_btn_wraps a {
    width: 80%;
}

#page_main.recruit_main.detail.detail.shinsotsu {
    background-image: url(../img/page/rec-shin_main.jpg), url(../img/page/recruit-top_main.jpg);
    background-repeat: no-repeat, no-repeat;
    background-position: left center, right center;
    background-size: cover, cover;
}

#page_main.recruit_main.detail.detail.tyuto {
    background-image: url(../img/page/rec-tyuto_main.jpg), url(../img/page/recruit-top_main.jpg);
    background-repeat: no-repeat, no-repeat;
    background-position: left center, right center;
    background-size: cover, cover;
}


#page_main.recruit_main.detail .page_main_section {
    width: 1000px;
    padding: 70px 0 150px 0;
}

.contents_wrap_100per.recruit_block01.recruit_youkou_block01 {
    padding: 0px 0 50px 0;
}

.contents_wrap_100per.recruit_block01.recruit_youkou_block01:first-child {
    background: #fff;
}


.recruit_anchor {
    position: relative;
    top: -35px;
    margin-bottom: 70px;
    background: #1D345B;
    padding: 20px;
}

.recruit_anchor ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px 60px;
    margin: 0;
    padding: 0;
    justify-content: center;
}

.recruit_anchor ul li {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid #fff;
}

.recruit_anchor ul li a {
    text-decoration: none;
    color: #fff;
    text-align: center;
    padding: 10px 15px;
    font-size: 14px;
    display: flex;
    gap: 10px;
    min-height: 70px;
    align-items: center;
    justify-content: center;
}

.recruit_anchor.careers {
    max-width: 740px;
    margin: 0 auto;
}

.recruit_anchor.careers ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}




.title_leftborder.large {
    font-size: 36px;
    margin: 0 0 30px 0;
    border-left: 6px solid #1D9CBF !important;
    padding: 0 0 0px 15px;
}

.recruit_youkou_block01 dl {
    margin: 0 auto;
    padding: 0;
    width: 94%;
    display: flex;
    flex-flow: wrap;
    gap: 10px 5%;
}

.recruit_youkou_block01 dl dt {
    margin: 0;
    padding: 0;
    width: 15%;
}

.recruit_youkou_block01 dl dd {
    margin: 0;
    padding: 0;
    width: 80%;
}

h3.recruit_youkou_block02 {
    background: #FAFAFA;
    margin: 0 0 0 0;
    padding: 50px 0 0 0;
    text-align: center;
}

h3.recruit_youkou_block02 {
    font-size: 36px;
    position: relative;
}

h3.recruit_youkou_block02:before {
    content: '';
    width: 40px;
    height: 6px;
    background: #066FFF;
    position: absolute;
    bottom: 0;
    bottom: -10px;
    left: calc(50% - 20px);
}

.wp-block-table.recruit_youkou_block02 {
    background: #FAFAFA;
    padding: 50px 4% 100px;
    margin-bottom: 70px;
}

.wp-block-table.recruit_youkou_block02 table {
    border: none;
}

.wp-block-table.recruit_youkou_block02 table td {
    border: none;
    padding: 20px;
}

.wp-block-table.recruit_youkou_block02 table td:nth-child(1) {
    text-align: center;
    width: 30%;
}

.wp-block-table.recruit_youkou_block02 table td:nth-child(2) {
    width: 70%;
}

.wp-block-table.recruit_youkou_block02 table tr {
    border-bottom: 1px solid #747373;
}

.recruit_youkou_block03-large {
    font-size: 26px;
    margin: 0 0 0px 0;
}

.recruit_youkou_block03-middle {
    font-size: 20px;
    color: #093D5D;
    margin: 0 0 30px 0;
}

.wp-block-table.recruit_youkou_block03 {
    border: none;
}

.wp-block-table.recruit_youkou_block03 table td {
    border: none;
    padding: 10px;
    display: block;
}

.wp-block-table.recruit_youkou_block03 table td:nth-child(1) {
    text-align: left;
    width: 100%;
    color: #093D5D;
    padding: 20px 0 20px 5%;
    font-size: 18px;
}

.wp-block-table.recruit_youkou_block03 table td:nth-child(2) {
    width: 100%;
    padding: 0 0 20px 10%;
}

.wp-block-table.recruit_youkou_block03 table tr {
    border-bottom: 1px solid #747373;
}

.wp-block-table.recruit_youkou_block03.calendar {
    margin: 0 0 70px 0;
}

.wp-block-table.recruit_youkou_block03.calendar table tr {
    border-bottom: none;
}


.stepflow_wrap {}

.stepflow_wrap dl {
    border-bottom: 1px solid #CCCCCC;
    position: relative;
    margin-bottom: 50px;
    padding: 0 0 10px 0;
    display: flex;
    flex-flow: wrap;
    align-items: start;
}

.stepflow_wrap dl:after {
    content: '';
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #066FFF;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.stepflow_wrap dl:last-child {
    border: none;
}

.stepflow_wrap dl:last-child:after {
    content: none;
}

.stepflow_wrap dl dt.label {
    background: #F7F5FF;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    display: inline-block;
    min-width: 150px;
    padding: 5px 10px;
    border-radius: 5px;
    margin-bottom: 5px;
}

.stepflow_wrap dl dd.title {
    font-weight: bold;
    font-size: 18px;
    padding: 5px 10px;
    margin-bottom: 5px;
    display: inline-block;
}

.stepflow_wrap dl dd.title .naiyo {
    font-weight: normal;
    display: block;
    margin-top: 5px;
}

.stepflow_wrap dl dd.text {
    display: block;
}

.recruit_youkou_block04.btn-before {
    text-align: center;
    color: #093D5D;
    font-size: 20px;
    margin-bottom: 10px;
}

.recruit_youkou_block04.btn-before .icon:before {
    content: '＼';
    margin: 0 10px;
    font-size: 26px;
    position: relative;
    top: 10px;
}

.recruit_youkou_block04.btn-before .icon:after {
    content: '／';
    margin: 0 10px;
    font-size: 26px;
    position: relative;
    top: 10px;
}

.rec_btn_wraps.recruit_youkou_block04 {
    margin: 0 0 0 0;
}

.rec_btn_wraps.recruit_youkou_block04 a {
    min-width: 480px;
    margin: 0 auto;
}


/* ベースのスタイル */
.flow-container.recruit_youkou_block05 {
    margin: 0 0 70px 0;
}

.recruit_youkou_block05 .flow-list {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 10px;
    /* 矢印間の隙間 */
}

.recruit_youkou_block05 .flow-list li {
    flex: 1;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 矢印（ステップ）部分のスタイリング */
.recruit_youkou_block05 .arrow-box {
    background-color: #e1f3ff;
    /* 薄い青 */
    color: #000;
    padding: 15px 10px 15px 30px;
    /* 左側に余白を作って重なりを調整 */
    text-align: center;
    position: relative;
    /* clip-pathで矢印の形に切り抜く */
    clip-path: polygon(calc(100% - 20px) 0%,
            100% 50%,
            calc(100% - 20px) 100%,
            0% 100%,
            20px 50%,
            0% 0%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-weight: bold;
}

/* 最初の要素の左側は平らにする */
.recruit_youkou_block05 .flow-list li:first-child .arrow-box {
    clip-path: polygon(calc(100% - 20px) 0%,
            100% 50%,
            calc(100% - 20px) 100%,
            0% 100%,
            0% 50%,
            0% 0%);
    padding-left: 10px;
}

/* 最後の要素の右側を平らにしたい場合（お好みで） */
/*
.flow-list li:last-child .arrow-box {
  clip-path: polygon(100% 0%, 100% 50%, 100% 100%, 0% 100%, 20px 50%, 0% 0%);
}
*/

.recruit_youkou_block05 .title {
    font-size: 26px;
    display: block;
}

.recruit_youkou_block05 .period {
    font-size: 16px;
    margin-top: 5px;
    display: block;
    font-weight: normal;
}

/* 下部の説明（dl）部分 */
.recruit_youkou_block05 dl {
    margin-top: 20px;
    padding: 0 10px;
}

.recruit_youkou_block05 dt {
    font-weight: bold;
    border-bottom: 1px solid #444;
    margin-bottom: 8px;
    font-size: 0.9rem;
}

.recruit_youkou_block05 dd {
    margin: 0;
    font-size: 0.85rem;
    line-height: 1.6;
    position: relative;
    padding-left: 15px;
}

.recruit_youkou_block05 dd::before {
    content: "・";
    position: absolute;
    left: 0;
}

.mar0px {
    margin-bottom: 0px !important;
}

.mar5px {
    margin-bottom: 5px !important;
}

.mar10px {
    margin-bottom: 10px !important;
}

.mar15px {
    margin-bottom: 15px !important;
}

.mar20px {
    margin-bottom: 20px !important;
}

.mar25px {
    margin-bottom: 25px !important;
}

.mar30px {
    margin-bottom: 30px !important;
}

.mar35px {
    margin-bottom: 35px !important;
}

.mar40px {
    margin-bottom: 40px !important;
}

.mar45px {
    margin-bottom: 45px !important;
}

.mar50px {
    margin-bottom: 50px !important;
}

.mar60px {
    margin-bottom: 60px !important;
}

.mar70px {
    margin-bottom: 70px !important;
}

.mar80px {
    margin-bottom: 80px !important;
}

.mar90px {
    margin-bottom: 90px !important;
}

.mar100px {
    margin-bottom: 100px !important;
}




.stepflow_wrap.recruit_youkou_block06 {
    width: 90%;
    margin: 0 auto 70px auto;
}

.stepflow_wrap.recruit_youkou_block06 dl {
    border-bottom: none;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    gap: 20px 5%;
}

.stepflow_wrap.recruit_youkou_block06 dl dt.label {
    padding: 0;
    background: none;
    width: 10%;
}

.stepflow_wrap.recruit_youkou_block06 dl dd.title {
    width: 75%;
    margin: 0;
    padding: 0;
}

.recruit_youkou_block07 {
    position: relative;
    width: 90%;
    margin-left: 10%;
    margin-bottom: 50px;
}

.recruit_youkou_block07.reverse {
    width: 90%;
    margin-left: 0%;
}

.recruit_youkou_block07 .block01 {
    display: flex;
    flex-flow: wrap;
    position: relative;
    z-index: 1;
    justify-content: space-between;
}

.recruit_youkou_block07 .block01 .photo {
    order: 2;
    width: 30%;
    border-radius: 20px;
    overflow: hidden;
}

.recruit_youkou_block07 .block01 .text {
    order: 1;
    width: 65%;
}

.recruit_youkou_block07 .block01 .text h4 {
    font-size: 22px;
    position: relative;
    padding: 0px 0 0 30px;
    margin: 30px 0 0 0;
}

.recruit_youkou_block07 .block01 .text h4:before {
    content: '';
    width: 20px;
    height: 6px;
    background: #9D4EDD;
    position: absolute;
    bottom: 0;
    bottom: 15px;
    /* left: calc(50% - 20px); */
    /* padding-left: 20px; */
    left: 0;
}

.recruit_youkou_block07 .block01 .text p {}

.recruit_youkou_block07 .block02 {
    position: relative;
    z-index: 2;
    background: rgba(247, 245, 255, 0.9);
    padding: 40px;
    width: 90%;
    top: -60px;
    margin-bottom: -60px;
}

.recruit_youkou_block07 .block02 h5 {
    font-size: 20px;
    color: #9D4EDD;
    margin: 0 0 30px 0;
}


.recruit_youkou_block07.reverse .block01 .text {
    order: 2;
}

.recruit_youkou_block07.reverse .block01 .photo {
    order: 1;
}

.recruit_youkou_block07.reverse .block02 {
    margin-left: 10%;
}


.contents_wrap_100per .recruit_youkou_block08 h2 {
    font-size: 36px;
    position: relative;
}

.contents_wrap_100per .recruit_youkou_block08 h2:before {
    content: '';
    width: 40px;
    height: 6px;
    background: #066FFF;
    position: absolute;
    bottom: -10px;
    left: calc(50% - 20px);
}

.contents_wrap_100per.recruit_block01 .recruit_youkou_block08 h3 {
    text-align: center;
    font-size: 28px;
    color: #093D5D;
    margin: 0 0 30px 0;
}




.dl_wrap dl {
    width: 100%;
}

.dl_wrap dl dt {
    border-bottom: 1px solid #DCDCDC;
    padding: 10px 0;
}

.dl_wrap dl dd {
    padding: 10px 0 0 25px;
}

.dl_wrap.dt-nobold dl dt {
    font-weight: normal;
}

.dl_wrap.no-border dl dt {
    border-bottom: none;
}

.dl_wrap.dl_side dl {
    width: 100%;
    border-bottom: 1px solid #DCDCDC;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
}

.dl_wrap.dl_side dl dt {
    border: none;
    padding: 10px 0;
}

.dl_wrap.dl_side dl dd {
    padding: 10px 0;
}

.dl_wrap.dl_side.dt_10 dl dt {
    width: 10%;
}

.dl_wrap.dl_side.dt_10 dl dd {
    width: 88%;
}

.dl_wrap.dl_side.dt_20 dl dt {
    width: 20%;
}

.dl_wrap.dl_side.dt_20 dl dd {
    width: 74%;
}

.dl_wrap.dl_side.dt_30 dl dt {
    width: 30%;
}

.dl_wrap.dl_side.dt_30 dl dd {
    width: 65%;
}

.dl_wrap.dl_side.dt_40 dl dt {
    width: 40%;
}

.dl_wrap.dl_side.dt_40 dl dd {
    width: 58%;
}

.dl_wrap.dl_side.dt_50 dl dt {
    width: 50%;
}

.dl_wrap.dl_side.dt_50 dl dd {
    width: 48%;
}


.dl_wrap.dt_bg dl {
    border: none;
}

.dl_wrap.dt_bg dl dt {
    background: #EFEFEF;
    border: none;
    padding: 15px;
}

.dl_wrap.dt_bg dl dd {
    padding: 15px;
}

.dl_wrap.dl_side.dt_bg dl {
    border: none;
    margin-bottom: 15px;
}

.dl_wrap.dl_side.dt_bg dl dt {
    background: #EFEFEF;
    padding: 15px;
}

.dl_wrap.dl_side.dt_bg dl dd {
    padding: 15px;
}

.contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap {
    border: 1px solid #093D5D;
    padding: 30px;
    width: 90%;
    margin: 0 auto;
}

.contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_bg dl dt,
.contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_bg dl dd {
    background: none;
    padding: 0;
}

.recruit_youkou_block09 {
    margin-bottom: 70px;
}

.recruit_youkou_block09 .dl_wrap {
    margin: 0 0 40px 0;
}

.recruit_youkou_block09 .dl_wrap.dl_side.dt_bg dl dt {
    background: #F7F5FF;
    padding: 5px 15px;
    text-align: center;
    font-weight: bold;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
}

.recruit_youkou_block09 .dl_wrap.dl_side.dt_bg dl dd {
    padding: 5px 15px;
}

.recruit_youkou_block09 .rec_btn_wraps.column1 {}

.recruit_youkou_block09 .rec_btn_wraps.column1 a {
    max-width: 480px;
    margin: 0 auto;
}

















/******************************

▼　SPスマホ対応

*******************************/


@media (max-width: 600px) {



    [id] {
        scroll-margin-top: 76px;
    }


    .pconly {
        display: none;
    }

    .sponly {
        display: block;
    }



    .table-scroll {
        overflow: auto;
        margin-bottom: 30px;
    }

    .table-scroll table {
        border-collapse: collapse;
        width: 160%;
        margin: 0 0 10px 0;
    }

    body.page section,
    body.page .section {
        width: 94%;
    }

    body.page .main-content {
        margin-top: 76px;
    }

    #page_main .page_main_section h2 {
        font-size: 32px;
    }

    #page_main .page_main_section {
        padding: 20px 0 60px 0;
    }

    #page_contents {
        padding: 30px 0;
        width: 94%;
        margin: 0 auto;
    }

    .contents_wrap_100per {
        padding: 50px 0;
    }

    .title_engmix span.en {
        font-size: 34px;
    }

    .title_engmix {
        margin-bottom: 40px;
    }

    #page_main.depth01 .btn_wrap {
        /* margin: 30px auto 0 auto;
        width: 84%; */
        grid-template-columns: 1fr;
    }

    #page_main.depth01 .page_main_section {
        padding: 30px 0 60px 0;
    }

    .title_colorlabel {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .wp-block-columns {
        gap: 30px 5%;
    }

    .title_center38 {
        font-size: 30px;
    }

    .title_h3-center {
        font-size: 30px;
        text-align: center;
        margin: 0 0 10px 0;
    }


    .title_h4-center {
        font-size: 18px;
    }



    #page_main.depth01 .btn_wrap .about-button {
        width: 100%;
    }



    .about_block01 dl {
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid #747373;
        display: flex;
        flex-flow: column;
        justify-content: start;
    }

    .about_block01 dl dt {
        width: 50%;
        text-align: left;
        margin-bottom: 5px;
    }

    .about_block01 dl dd {
        width: 100%;
        margin: 0;
    }

    .about_block02 .history_wrap dl {
        width: 100%;
    }

    .about_block02 .history_wrap dl dd {
        padding: 10px 0 10px 10px;
    }

    .about_block02 .history_wrap dl dd p span.label {
        width: calc(90% - 50px);
    }



    .company_block01 .photo {
        order: 1;
        text-align: center;
    }

    .company_block01 .photo img {
        max-height: 250px;
        width: auto;
        position: relative;
        right: 20px;
    }

    .company_block01 .text {
        order: 2;
    }

    .company_block02 .text {
        width: 100%;
        margin: 0 auto 50px auto;
    }


    .company_block02 h4 {
        font-size: 30px;
        text-align: center;
        margin-top: 0;
    }

    .company_block02 .shimei {
        padding: 10px;
    }

    .company_block02 .shimei img {
        width: 100%;
        height: auto;
    }





    .vision_block03 .travel_wrap {
        gap: 30px 5%;
        display: flex;
        flex-flow: column;
    }

    .vision_block03 .travel_wrap .box {
        width: 100%;
    }

    .wp-block-columns.service-block01 {
        padding: 20px;
        margin-bottom: 40px;
    }

    .service-block01 h4 {
        margin: 0;
    }

    .service_block02 h3 {
        font-size: 30px;
    }

    .service_block02 p.lead {
        text-align: left;
    }


    .service_block02 .onayami_wrap {

        flex-flow: column;
        margin: 0 0 20px 0;
    }

    .service_block02 .onayami_wrap .box .wrap {
        padding: 15px;
    }

    .service_block02 .onayami_wrap .box {
        width: 100%;
        order: 1;
    }

    .service_block02 .onayami_wrap .box.img {
        order: 2;
    }

    .service_block02 .flow_wrap {
        padding: 20px;
        flex-flow: column;
        gap: 20px 3%;
    }

    .service_block02 .flow_wrap .box {
        width: 100%;
    }

    .service_block02 .flow_wrap .box .step .label {
        min-width: 100%;
    }

    .service_block02 .flow_wrap .box.yaji {
        width: 100%;
        justify-content: center;
    }

    .service_block02 .flow_wrap .box.yaji span {
        transform: rotate(90deg);
    }


    .service_block02 .teian_container {
        padding: 20px;
    }

    .service_block02 .teian_wrap {
        flex-flow: column;
        width: 100%;
    }

    .service_block02 .teian_wrap.title {
        display: none;
    }

    .service_block02 .teian_wrap .box.teian {
        width: 100%;
        align-items: start;
    }

    .service_block02 .teian_wrap .box.kaizen {
        width: 100%;
    }

    .service_block02 .teian_wrap .box.yaji {
        width: 100%;
        justify-content: center;
    }

    .service_block02 .teian_wrap .box.yaji span {
        transform: rotate(90deg);
    }


    .service_block02 .soudan_wrap {
        width: 100%;
    }

    .service_block02 .team_wrap {
        padding: 20px;
    }

    .service_block02 .team_wrap.flex {
        flex-flow: column;
        gap: 20px 5%;
    }

    .service_block02 .team_wrap.flex .photo {
        order: 1;
        width: 100%;
    }

    .service_block02 .team_wrap.flex .text {
        order: 2;
        width: 100%;
    }

    .migration-block01.btn_wrap {
        width: 80%;
        margin: 0 auto 80px auto;
    }

    .migration-block01-h5 {
        font-size: 18px;
        margin: 0 0 20px 0;
    }

    ul.li_num.migration-hassei {
        padding-left: 0;
    }


    .migration-block01 ul.li_nu {
        margin: 0;
        padding: 0;
    }

    .service_block02.vision_block03 .teian_wrap .box.teian {
        width: 100%;
    }

    .service_block02.vision_block03 .teian_wrap .box.kaizen {
        width: 100%;
    }


    .contents_wrap_100per.service_block02 ul.li_nu {
        margin: 0;
        padding: 0;
    }

    .migration_list01 li {
        width: 80%;
        margin: 0 auto;
    }

    .migration_list02 li {
        width: 31%;
    }

    .migration-block01-h6 {
        font-size: 16px;
    }

    .service-block01.strengths-block01 figure.wp-block-image.size-full img {
        max-height: 200px;
    }

    .service-block01.strengths-block01 figure.wp-block-image.size-full {
        top: 0;
        margin-bottom: 0;
    }

    .contents_wrap_100per.strengths-block02 h3 {
        font-size: 30px;
    }

    .contents_wrap_100per.strengths-block02 p.leadtext {
        text-align: left;
    }

    .strengths-block03.wp-block-columns .title_colorlabel {
        margin-top: 0;
    }

    .strengths-block03.wp-block-columns {
        padding: 20px;
    }

    .se-rates-block01 .is-layout-flow:first-child {
        text-align: center;
        order: 1;
    }

    .se-rates-block01 .is-layout-flow:nth-child(2) {
        order: 2;
    }

    .se-rates-block01 .is-layout-flow:first-child img {
        max-height: 200px;
        width: auto;
    }

    .table-scroll.se-table table {
        width: 350%;
    }

    p.se-btn {
        text-align: center;
    }


    .tech-structure_block01 {
        width: 90%;
    }

    .tech-structure_block02 {
        background: none;
    }

    .development-block02 {
        width: 100%;
    }

    .development-block03 {
        padding: 20px;
    }

    .development-block03 h4 {
        margin-top: 0;
    }

    .title_left22 {
        font-size: 18px;
    }


    .title_center-underline {
        font-size: 28px;
    }

    .title_center-underline h3 {
        margin-top: 0;
    }

    .contactform_wrap {
        padding: 20px;
    }

    .contactform_wrap .form_area dl {
        flex-flow: column;
    }

    .contactform_wrap .form_area dl dt {
        width: 100%;
    }

    .contactform_wrap .form_area dl dd {
        width: 100%;
        margin: 0 0 10px 0;
        padding: 0;
    }


    .contactform_wrap .form_area dl dd .wpcf7-radio,
    .contactform_wrap .form_area dl dd .wpcf7-checkbox {
        flex-flow: column;
    }

    .contactform_wrap .form_area p.send input {

        font-size: 15px;
        padding: 20px 5px;
        min-width: 100%;
    }


    .contactform_image img {
        max-width: 100% !important;
    }

    .contactform_wrap .form_area dl dd.text input {
        width: 100%;
    }

    ul.li_decimal {
        padding: 0;
    }





    #page_main.recruit_main .page_main_section {
        width: 94%;
        margin: 0 auto;
        flex-flow: column;
    }

    #page_main.recruit_main .page_main_section .right,
    #page_main.recruit_main .page_main_section .left {
        width: 100%;
    }

    #page_main.recruit_main .page_main_section .right {
        order: 1;
    }

    #page_main.recruit_main .page_main_section .left {
        order: 2;
    }

    #page_main.recruit_main .page_main_section .left .img {
        margin: 0 auto 40px;
    }

    .rec_btn_wraps a {
        font-size: 16px;
        padding: 7px 7px 7px 20px;
    }

    .rec_btn_wraps .arrow {
        width: 35px;
    }

    .rec_btn_wraps .text {
        width: calc(100% - 35px) !important;
    }

    #page_main.recruit_main .page_main_section .right h1 {
        font-size: 25px;
    }

    #page_main.recruit_main .page_main_section .right h2 {
        font-size: 45px;
    }

    #page_main.recruit_main .page_main_section .right h3 {
        font-size: 30px;
    }

    #page_main.recruit_main .page_main_section .right p {
        margin: 0 0 0 0;
        font-size: 18px;
    }



    .contents_wrap_100per.recruit_block01 {
        padding: 0px 0 0px 0;
    }

    .contents_wrap_100per.recruit_block01 h3 {
        font-size: 25px;
        margin: 0 0 30px 0;
        padding-top: 35px;
    }

    .recruit_block02 {
        background-position: left top, right top;
        padding: 0 0 0px 0;
    }

    .recruit_block02 h3 {
        font-size: 30px;
        margin-bottom: 50px;
    }

    .recruit_block02 p {
        font-size: 16px;
        width: 80%;
        margin: 0 auto 20px;
        text-align: left;
    }

    .contents_wrap_100per.recruit_block03 {
        padding: 20px 0 0px 0;
    }


    .recruit_block03 .title_engmix span.en.jptxt {
        font-size: 30px;
    }

    .contents_wrap_100per.recruit_block03 .wraps {
        flex-flow: column;
    }

    .contents_wrap_100per.recruit_block03 .wraps .text {
        width: 100%;
        order: 2;
    }

    .contents_wrap_100per.recruit_block03 .wraps .img {
        width: 80%;
        margin: 0 auto;
        order: 1;
    }

    .rec_btn_wraps.column1 a {
        width: 100%;
    }

    .contents_wrap_100per.recruit_block04 {
        padding: 0 0 50px 0;
    }

    .recruit_block04 .wraps {
        flex-flow: column;
        justify-content: space-between;
    }

    .recruit_block04 .wraps .box {
        width: 100%;
        display: flex;
        flex-flow: wrap;
        justify-content: space-between;
    }

    .recruit_block04 .wraps .box .photo {
        width: 25%;
        margin: 0;
    }

    .recruit_block04 .wraps .box .text {
        width: 70%;
        margin: 0;
    }

    .recruit_block04 .wraps .box .text h5 {
        font-size: 18px;
        margin: 0 0 0px 0;
    }

    .recruit_block04 .rec_btn_wraps.column1 {
        width: 80%;
    }

    .rec_btn_wraps.column1 {
        width: 80%;
        margin: 0 auto;
    }

    .faq_accordion details {
        padding: 10px 10px;
    }

    .faq_accordion .faq summary span.wrap .label {
        width: 10%;
        font-size: 22px;
    }

    .section-contact.recruit-contact .contact-left {
        width: 100%;
    }

    .section-contact.recruit-contact .contact-right {
        width: 100%;
    }

    .section-contact_inner {
        gap: 20px;
    }




    #page_main.recruit_main.detail .page_main_section {
        width: 94%;
        padding: 0px 0 30px 0;
        margin-bottom: 50px;
    }

    #page_main.recruit_main.detail.detail.shinsotsu {
        background-position: right 40% center, right center;
    }

    #page_main.recruit_main.detail.detail.tyuto {
        background-position: right 40% center, right center;
    }


    .rec_btn_wraps.recruit_youkou_block04 a {
        min-width: 80%;
    }

    #page_main.recruit_main.detail .page_main_section .right p {
        margin: 0 0 20px 0;
    }

    .recruit_anchor {
        display: none;
    }

    .title_leftborder.large {
        font-size: 26px;
    }

    .recruit_youkou_block01 dl {
        flex-flow: column;
    }

    .recruit_youkou_block01 dl dt {
        width: 100%;
    }

    .recruit_youkou_block01 dl dd {
        width: 100%;
    }

    .contents_wrap_100per.recruit_block01.recruit_youkou_block01 {
        padding: 0;
        margin-bottom: 30px;
    }

    .wp-block-table.recruit_youkou_block02 table td {
        padding: 10px 0;
        display: block;
        width: 100%;
    }

    .wp-block-table.recruit_youkou_block02 table td:nth-child(1) {
        width: 100%;
        text-align: left;
        color: #093D5D;
        padding: 10px 0 0 0;
    }


    .wp-block-table.recruit_youkou_block02 table td:nth-child(2) {
        padding: 10px 0 10px 20px;
        width: 100%;
    }

    .wp-block-table.recruit_youkou_block02 {
        padding: 50px 4% 50px;
    }

    .wp-block-table.recruit_youkou_block03 table td:nth-child(1) {
        padding: 10px 0 10px 0;
    }

    .wp-block-table.recruit_youkou_block03 table td:nth-child(2) {
        padding: 0 0 20px 20px;
    }

    .wp-block-table.recruit_youkou_block03.calendar td iframe {
        width: 100%;
    }

    .stepflow_wrap dl dd.title {
        margin-left: 0;
        width: 100%;
    }

    .stepflow_wrap dl {
        margin-bottom: 20px;
    }

    .rec_btn_wraps.recruit_youkou_block04 {
        margin: 0 0 70px 0;
    }

    .recruit_youkou_block05 .flow-list {
        flex-flow: column;
    }

    .recruit_youkou_block05 .title {
        font-size: 20px;
    }

    .recruit_youkou_block05 dl {
        margin-bottom: 20px;
    }

    .stepflow_wrap.recruit_youkou_block06 dl {
        flex-flow: column;
    }

    .stepflow_wrap.recruit_youkou_block06 dl dd.title {
        width: 100%;
        margin-bottom: 15px;
    }

    .stepflow_wrap.recruit_youkou_block06 dl dt.label {
        margin-top: 30px;
        width: 50%;
    }

    .stepflow_wrap.recruit_youkou_block06 dl dt.label img {
        max-width: 100%;
    }

    .recruit_youkou_block07 .block02 {
        padding: 20px;
        width: 100%;
        top: 0;
        margin-bottom: 0;
    }

    .recruit_youkou_block07 {
        width: 100%;
        margin-left: 0;
    }

    .recruit_youkou_block07 .block01 .photo {
        order: 1;
    }

    .recruit_youkou_block07 .block01 .text {
        order: 2;
    }

    .recruit_youkou_block07 .block01 .text h4 {
        font-size: 18px;
        padding: 0px 0 0 30px;
        margin: 0;
    }

    .recruit_youkou_block07 .block01 .text h4:before {
        bottom: unset;
        top: 10px;
    }

    .recruit_youkou_block07.reverse {
        width: 100%;
    }

    .recruit_youkou_block07 .block01 .text p {
        font-size: 13px;
    }

    .recruit_youkou_block07.reverse .block02 {
        margin-left: 0;
    }

    .section-contact.recruit-contact .contact-right a.about-button {
        height: 60px;
    }

    .section-contact.recruit-contact .contact-right a.about-button.contact {
        padding: 10px 10px 10px 20px;
    }

    .section-contact.recruit-contact .contact-right .about-button__text {
        font-size: 14px;
    }

    h3.recruit_youkou_block02 {
        font-size: 28px;
    }

    .contents_wrap_100per .recruit_youkou_block08 h2 {
        font-size: 28px;
    }

    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 h3 {
        font-size: 22px;
    }

    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap {
        padding: 20px;
        width: 100%;
    }

    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side dl {
        flex-flow: column;
    }

    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_30 dl dt {
        font-weight: bold;
    }

    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_30 dl dt,
    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_30 dl dd {
        width: 100%;
    }

    .recruit_youkou_block01 dl dt {
        font-weight: bold;
    }

    .recruit_youkou_block01 dl dd {
        padding: 0 0 0 20px;
        ;
    }

    .recruit_youkou_block09 .dl_wrap.dl_side.dt_bg dl dt {
        width: 40%;
    }

    .recruit_youkou_block09 .dl_wrap.dl_side.dt_bg dl dd {
        width: 100%;
        padding-left: 20px;
        margin: 0;
    }

    .recruit_youkou_block09 .rec_btn_wraps.column1 {
        width: 100%;
    }


    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_bg dl dt,
    .contents_wrap_100per.recruit_block01 .recruit_youkou_block08 .dl_wrap.dl_side.dt_bg dl dd {
        width: 100%;
    }


    .rec_btn_wraps .text {
        font-size: 18px;
    }



    .strengths-block02 .main-visual {
        height: auto;
        /* 高さを固定せず中身に合わせる */
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        /* 要素間の隙間 */
        margin-top: 20px;
    }

    /* 各要素の絶対配置をリセット */
    .strengths-block02 .circle {
        position: static;
        transform: none !important;
        width: 90%;
        /* 横幅いっぱいに近く */
        max-width: 320px;
        height: auto;
        min-height: 180px;
        border-radius: 15px;
        /* スマホでは円形より角丸の方が読みやすい */
        padding: 25px;
    }

    /* ロゴを一番上に配置したい場合の設定 */
    .strengths-block02 .center-logo {
        order: -1;
        /* 順番を一番上に */
        width: 250px;
        height: 250px;
        border-radius: 50%;
        /* ロゴは円形を維持 */
        margin-bottom: 20px;
    }

    /* 下部の「その他」バーを縦並びに */
    .strengths-block02 .others {
        flex-direction: column;
        margin-top: 30px;
        width: 90%;
        padding: 20px;
    }

    .strengths-block02 .others-label {
        width: 100%;
        padding: 10px;
    }

    .strengths-block02 .others-content {
        padding: 15px;
        font-size: 0.85rem;
    }



    .strengths-block02 .item ul {
        font-size: 100%;
    }

    .se-rates-block01.wp-block-columns {
        padding: 20px;
    }







    .sp-entry-bar.etc {
        background: #1D345B;
        height: auto;
    }

    .sp-entry-bar.etc ul {
        display: flex;
        flex-flow: wrap;
        margin: 0;
        padding: 0;
        justify-content: center;
        width: 100%;
    }

    .sp-entry-bar.etc ul li {
        width: calc(100% / 6);
        list-style: none;
    }

    .sp-entry-bar.etc ul li a {
        display: flex;
        flex-flow: column;
        margin: 0;
        padding: 0;
        justify-content: center;
        text-decoration: none;
        padding: 7px 0 5px;
    }

    .sp-entry-bar.etc ul li a .icon {
        text-align: center;
        margin-bottom: 7px;
    }

    .sp-entry-bar.etc ul li a .label {
        color: #fff;
        font-size: 8px;
        text-align: center;
    }


    .works_detail_wrap {
        flex-direction: column;
    }

    .works_detail_wrap .left {
        width: 100%;
    }

    .works_detail_wrap .right {
        width: 100%;
    }


    .news_list_wrap dl {
        flex-direction: column;
    }


    .news_list_wrap dl dt {
        width: 100%;
    }





}



/* モバイルで詰まりすぎないように */
@media (max-width: 640px) {
    .security-block01 .privacy-notice {
        padding: 14px;
        border-radius: 12px;
    }

    .security-block01 .section {
        padding: 12px;
    }
}











/* ====================================

                Dr Webページ

 ==================================== */


/* ========= Dr.Web page (scoped) ========= */
.drweb-page {
    padding: 10px 0;
    font-size: 12pt;
    line-height: 1.4;
    color: #222;
    font-family: "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", sans-serif;
}

.drweb-page #t {
    width: 920px;
    background-color: #fff;
    margin: 0 auto;
}

.drweb-page img {
    vertical-align: middle;
    border: 0;
}

/* header/footer/contents border */
/* .drweb-page .drweb-site-header,
.drweb-page .drweb-site-footer,
.drweb-page #contents {
    border-left: 1px solid #1D388F;
    border-right: 1px solid #1D388F;
} */

/* ===== Header ===== */
.drweb-page .drweb-site-header {
    position: relative;
    padding: 10px 20px;
    height: auto;
    min-height: 60px;

    border-top: 2px solid #1D388F;
    border-bottom: 3px solid #1D388F;
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    background-color: #fff;
    background-image: url("/../img/page/drwebpage_key-back.png");
    background-repeat: no-repeat;
    background-position: left center;

    display: flex;
    align-items: center;
}

.drweb-page .jireiTitle {
    float: none;
    margin: 0;
    font-size: 25pt;
    line-height: 1.2;
    color: #222;
    padding: 10px;
    text-shadow: 2px 2px 2px #dadada;
    padding-left: 80px;
}

.drweb-page .jireiTitleSub {
    font-size: 10pt;
    color: #626262;
    margin: 0;
}

/* ===== Contents ===== */
.drweb-page #contents {
    padding-top: 10px;
}

.drweb-page section {
    padding: 5px 20px 10px;
    width: 100% !important;
}

.drweb-page .title-box {
    width: 100%;
    display: block;
}

.drweb-page .title {
    display: flex;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    height: 35px;
    font-size: 12pt;

    border-top: 2px solid #5555ff;
    margin: 0 0 5px;
    padding-left: 3px;

    max-width: 100%;
}


.drweb-page #t {
    box-sizing: border-box;
}


.drweb-page .title .logo {
    height: 23px;
    margin-right: 0.2em;
}

/* ===== Drweb header block ===== */
.drweb-page .box-background {
    display: flex;
    gap: 16px;
    padding: 10px;
    align-items: flex-start;
    border: 1px solid #777777;
    box-shadow: 0 0 3px #cccccc;
    border-radius: 10px;
    background: linear-gradient(to bottom, #efefef, #dddddd);
    align-items: center;
}

.drweb-page .drweb-head-logo {
    flex: 0 0 auto;
}

.drweb-page .drweb-head-logo img {
    width: 260px;
    padding: 20px;
}


.drweb-page .drweb-head-desc {
    flex: 1 1 auto;
    font-size: 0.95em;
    line-height: 1.6;
}

.drweb-page .drweb-head-shot {
    flex: 0 0 auto;
}



.drweb-page .drweb-head-shot img {
    display: block;
    max-width: 280px;
    height: auto;
}




/* ===== Section title bar ===== */
.drweb-page .title2-back {
    /* ★ image/sample.png → sample.png（必要に応じてパス調整） */
    background-image: url("../img/page/drwebpage_title_label.png");
    background-repeat: no-repeat;
    background-position: left top;

    color: #fff;
    font-weight: bold;
    padding: 2px 5px;
    border-bottom: 1px solid #1d388f;
    margin-bottom: 5px;
}

/* ===== Feature table ===== */


.drweb-page #feature table.t {
    width: 100%;
    border-collapse: collapse;
    margin: 0 auto;
    font-size: 16px;
    border: 2px solid #fff;
}

.drweb-page #feature table.t td {
    padding: 10px;
    vertical-align: top;
    font-weight: normal !important;
    border: 2px solid #fff;
}

.drweb-page #feature table.t td:first-child {
    width: 220px;
    color: #fff;
    font-weight: bold;
}


.drweb-page #feature table.t tr:nth-child(odd) td:first-child {
    background-color: #53A6F2;
}


.drweb-page #feature table.t tr:nth-child(even) td:first-child {
    background-color: #66C1F2;
}

.drweb-page #feature table.t td.contents {
    color: #111;
}

.drweb-page #feature table.t tr:nth-child(odd) td.contents {
    background-color: #eeeeee;
    font-size: 14px;
    border: 2px solid #fff;
}


.drweb-page #feature table.t tr:nth-child(even) td.contents {
    background-color: #dcdcdc;
    font-size: 14px;
    border: 2px solid #fff;
}

.drweb-page #feature table.t td.contents ul {
    margin: 0;
    padding-left: 1.2em;
    line-height: 1.8;
}


/* ===== Function blocks ===== */

.drweb-page .functionList {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas:
        "f1 f2 f3"
        "f1 f4 f4";
    gap: 12px;
    margin-left: 0;
    height: auto;
    grid-auto-rows: 260px;
}

.drweb-page .functionList {
    grid-auto-rows: 220px;
}

.drweb-page .functionList .function1 {
    grid-area: f1;
}

.drweb-page .functionList .function2 {
    grid-area: f2;
}

.drweb-page .functionList .function3 {
    grid-area: f3;
}

.drweb-page .functionList .function4 {
    grid-area: f4;
}


.drweb-page .functionList>div {
    overflow: hidden;
}




.drweb-page .functionList .head {
    color: #fff;
    padding: 10px 12px;
    border-bottom: solid 2px rgba(255, 255, 255, 0.6);
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.25);
    height: auto;
    font-weight: bold;
    font-size: 18px;
}


.drweb-page .functionList .contents {
    padding: 12px;
    position: relative;
    height: auto;
    box-sizing: border-box;
}


.drweb-page .functionList .contents img {
    margin: 0 auto;
}

.drweb-page .functionList .function4 img {
    width: 80%;
}


.drweb-page .functionList .function1 .head,
.drweb-page .functionList .function1 .contents {
    background-color: #62BCF3;
}

.drweb-page .functionList .function2 .head,
.drweb-page .functionList .function2 .contents {
    background-color: #E995AC;
}

.drweb-page .functionList .function3 .head,
.drweb-page .functionList .function3 .contents {
    background-color: #A2E055;
}

.drweb-page .functionList .function4 .head,
.drweb-page .functionList .function4 .contents {
    background-color: #F3B33E;
}


.drweb-page .functionList img {
    max-width: 100%;
    height: auto;
    display: block;
}


.drweb-page .functionList .ss {
    position: static !important;
    display: block;
    max-width: 100%;
    height: auto;
}

.drweb-page .functionList .function1 .contents {
    min-height: 438px;
}


.drweb-page .drweb_img-2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.drweb-page .drweb_img-2col img {
    width: 100%;
    height: auto;
    display: block;
}



/* ===== Contact ===== */
.drweb-page #contacts {
    margin-top: 5px;
}

.drweb-page #contactbox {
    border: 1px solid #777;
    border-radius: 5px;
    height: 170px;
    padding: 5px 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.drweb-page #vline {
    margin-left: 20px;
    height: 80%;
    border-right: 1px solid #222;
    padding-right: 20px;
}


.drweb-page #contact2 {
    margin-left: 20px;
}

/* ===== Footer ===== */
.drweb-page .drweb-site-footer {
    padding: 5px 10px;
    height: 40px;

    border-top: 2px solid #1D388F;
    border-bottom: 1px solid #1D388F;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;

    background: linear-gradient(#ffffff, #eeeeee);
    background-clip: padding-box;
}

.drweb-page .drweb-site-footer p {
    font-size: 12pt;
    margin: 0;
    color: #777;
}

/* ===== Responsive (optional) ===== */
@media (max-width: 980px) {

    .drweb-page section {
        padding: 0;
        width: 100% !important;
    }


    .drweb-page {
        width: 100%;
    }

    .drweb-page .title {
        padding: 20px;
        align-items: baseline;
        height: auto;
    }

    .drweb-page .title-box {
        padding: 0;
    }



    .drweb-page .drweb-site-header .logo {
        max-height: 44px;
        width: auto;
        margin-left: auto;
    }


    .drweb-page .drweb-site-header {
        padding: 12px 14px;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;

    }

    .drweb-page .jireiTitle {
        font-size: 20pt;
        padding: 0;
        padding-left: 62px;
        line-height: 1.15;
        text-shadow: 1px 1px 1px #dadada;
    }

    .drweb-page .jireiTitleSub {
        font-size: 10pt;
        margin-top: 4px;
    }

    .drweb-page .drweb-site-header .logo {
        margin-left: 0;
        align-self: flex-end;
        max-height: 38px;
    }


    .drweb-page #t {
        width: auto;
        margin: 0 10px;
    }

    .drweb-page .drweb-header {
        flex-direction: column;
    }

    .drweb-page .drweb-header ul.screenshot img {
        max-width: 100%;
    }


    .drweb-page .functionList {
        grid-template-columns: 1fr;
        grid-template-areas:
            "f1"
            "f2"
            "f3"
            "f4";
    }

    .drweb-page .drweb_img-2col {
        grid-template-columns: 1fr;
    }



    .drweb-page #feature table.t,
    .drweb-page #feature table.t tbody,
    .drweb-page #feature table.t tr,
    .drweb-page #feature table.t td {
        display: block;
        width: 100%;
    }

    .drweb-page #feature table.t tr {
        margin-bottom: 0;
    }

    .drweb-page #feature table.t td:first-child {
        width: 100%;
        padding: 14px 16px;
    }

    .drweb-page #feature table.t td.contents {
        padding: 14px 16px 20px;
    }


    .drweb-page #contactbox {
        flex-direction: column;
        height: auto;
        gap: 20px;
        text-align: center;
        padding-bottom: 20px;
    }

    .drweb-page #contactbox img {
        height: auto !important;
        max-width: 100%;
    }


    .drweb-page #vline {
        border-right: none;
        height: auto;
        padding-bottom: 10px;
        border-bottom: 1px solid #222;
    }


    .drweb-page .drweb-site-footer {
        height: auto;
        padding: 10px 14px;
    }

    .drweb-page .drweb-site-footer p {
        font-size: 11pt;
        line-height: 1.5;
        word-break: break-word;
    }

}



/* ニュースリリース詳細ページ */


.entry_post_nav {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 15px;
    margin: 60px auto;
    max-width: 90%;
}

.entry_post_nav>div {
    flex: 1;
    min-width: 0;
    display: flex;
}

.entry_post_nav a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 80px;
    padding: 0 25px;
    text-decoration: none;
    color: #333;
    background: #fff;
    border: 1px solid #dce4ec;
    box-sizing: border-box;
    transition: all 0.3s ease;
    position: relative;
}


.entry_post_nav a:hover {
    background-color: #f9fbff;
    border-color: #0086a2;
}

.nav_label {
    display: block;
    font-size: 11px;
    font-weight: bold;
    color: #0086a2;
    margin-bottom: 5px;
    letter-spacing: 0.1em;
}


.nav_title {
    display: block;
    font-size: 14px;
    color: #333;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
}

.entry_post_nav .back a {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    background: #253454;
    color: #fff;
    border: none;
    font-weight: bold;
}

.entry_post_nav .back a:hover {
    background: #0086a2;
}

.entry_post_nav .prev a::before {
    content: '＜';
    position: absolute;
    left: 10px;
    color: #0086a2;
    font-weight: bold;
    font-size: 12px;
}

.entry_post_nav .next a::after {
    content: '＞';
    position: absolute;
    right: 10px;
    color: #0086a2;
    font-weight: bold;
    font-size: 12px;
}


@media screen and (max-width: 768px) {
    .entry_post_nav {
        flex-direction: column;
    }

    .entry_post_nav a {
        height: 70px;
    }

    .entry_post_nav .back {
        order: 3;
    }
}