@charset "utf-8";
/* CSS Document */
/*
Theme Name: ドーコン2025
Theme URI: 
Description: 
Version: 1.0
Author: SUDA WEB TEAM and WEB PROJECT
Author URI: https://www.suda.co.jp
Tags:
*/

/*commonにない共通もの*/

body { background: rgba(49,154,123,0.08);}

.borderRadiusA30 { border-radius: 30px; }
.borderRadiusA20 { border-radius: 20px; }





.tShadow { text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8); }

.fw900 { font-weight: 900;}




.w100per { width: 100%; }
.w90per { width: 90%; }

.h100per { height: 100%; }

.posR { position: relative; }

@media only screen and (max-width: 766px) {
    .inner { width: 95%; min-width: 95%; margin: 0 auto; display: block; }
}




/** parts **/
header { width: 100%; height: 80px; padding: 0 0 0 15px; background: #fff; display: flex; align-items: center; position: sticky; top: 0; z-index: 1000; }
header h1 { width:22%; max-width: 300px; font-weight: 500; }
header h1 a { display: flex; justify-content: space-between; align-items: center; }
header h1 img { max-width: 220px; height: auto; }

@media only screen and (max-width: 766px) {
    header h1 { width:100%; max-width: auto; font-weight: 500; }
    header h1 img { max-width: 150px; height: auto; margin-right: 1rem; }
}

.headerMenuBlock { width: 75%; display: flex; justify-content: space-between; }
.headerMenuMain { width: calc( 100% - 300px); }
.headerMenuMain ul { display: flex; justify-content: space-around; width: 100%; }
.headerMenuMain ul li { width: auto; display: flex; justify-content: center; align-items: center; }
.headerMenuMain ul li a { font-size: 1.6rem;/*new*/ font-weight: 400; display: flex; justify-content: center; align-items: center; border-right: solid 1px #666; padding-right: 1.4rem; }
.headerMenuMain ul li:nth-of-type(6) a { border: none; }

.headerMenuSub ul { display: flex; justify-content: space-around; }
.headerMenuSub ul li { width: 10vw; height: 80px; }
.headerMenuSub ul li a { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; font-size: 1.6rem;/*new*/ font-weight: 300; color: #fff; position: relative; font-weight: bold;/*new*/ }
.headerMenuSub ul li:nth-of-type(1) a { background: #286e50; }
.headerMenuSub ul li:nth-of-type(2) a { background: #0d4990; }
.headerMenuSub ul li:nth-of-type(3) a { background: #2c323f; }
.headerMenuSub ul li a::after { content: ''; width: 5px; height: 5px; background: #fff; border-radius: 50%; position: absolute; right: 10px; top: 40px; }
.headerMenuSub .sub-menu { display: block; }
.headerMenuSub .sub-menu li { width: 100%; height: 60px; }
.headerMenuSub .sub-menu li a { width: 100%; height: 100%; }

#menu-item-133 .sub-menu li:nth-of-type(1) a { background: #449773; }
#menu-item-133 .sub-menu li:nth-of-type(2) a { background: #56b68c; }

#menu-item-134 .sub-menu li:nth-of-type(1) a { background: #2a5fa0; }
#menu-item-134 .sub-menu li:nth-of-type(2) a { background: #437abe; }

@media only screen and (max-width: 766px) {
    .headerMenuBlock { display: none; }
}

/*spNav*/
/* PCでは非表示 */ 
@media (min-width: 769px) { 
    #spMenuBtn, #spNav, #spOverlay { display: none !important; } 
}

/* SP専用 */
@media (max-width: 768px) {
    .sp-menu-btn { position: fixed; top: 15px; right: 15px; width: 35px; height: 20px; z-index: 1100; background: none; border: none; cursor: pointer; display: flex; flex-direction: column; justify-content: space-between; padding: 0; }
    .sp-menu-btn span { display: block; height: 3px; background: #333; border-radius: 2px; transition: all 0.3s ease; transform-origin: center; }
    .sp-menu-btn.open span:nth-child(1) { transform: rotate(45deg) translate(6px, 6px); }
    .sp-menu-btn.open span:nth-child(2) { opacity: 0; }
    .sp-menu-btn.open span:nth-child(3) { transform: rotate(-45deg) translate(6px, -6px); }
    .sp-nav { position: fixed; top: 0; right: 0; width: 70%; height: 100%; background: #fff; z-index: 1050; padding: 60px 20px 20px 20px; box-shadow: -2px 0 10px rgba(0,0,0,0.3); overflow-y: auto; transform: translateX(100%); transition: transform 0.3s ease, opacity 0.3s ease; opacity: 0; }
    .sp-nav.open { transform: translateX(0); opacity: 1; }
    .sp-overlay { display: none; position: fixed; top:0; left:0; width:100%; height:100%; background: rgba(0,0,0,0.6); z-index: 1040; opacity: 0;  transition: opacity 0.3s ease; }
    .sp-overlay.open { display: block; opacity: 1; }
    .sp-nav .sub-menu { display: none; padding-left: 1rem; }
    .sp-nav .menu-item-has-children > a { cursor: pointer; position: relative; padding-right: 1.2rem; }
    .sp-nav .menu-item-has-children > a::after { content: '▼'; position: absolute; right: 0; top: 50%; transform: translateY(-50%); transition: transform 0.2s ease; font-size: 0.8rem; }
    .sp-nav .menu-item-has-children > a.open::after { content: '▲'; }

    .sp-nav li {  display: block; }
    .sp-nav li a { font-size: 1.4rem; padding: 1.4rem 0 1.4rem 2rem; border-bottom: solid 1px #ccc; display: block; background: #fff!important; }


/* --- SP ボタン：初期状態 --- */
.sp-menu-btn span {
    background: #333 !important; /* 上書きされた透明化対策 */
    height: 3px !important;
    transition: all 0.3s ease !important;
}

/* --- 開いたときの変形（元の動きを再現） --- */
.sp-menu-btn.open span:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px) !important;
}

.sp-menu-btn.open span:nth-child(2) {
    opacity: 0 !important;
}

.sp-menu-btn.open span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px) !important;
}



}




.youkouArea { width: 100%; height: 360px; margin: 4rem auto 0; }
.youkouArea .flex { width: 100%; height: 100%; background: url(assets/images/ph010.jpg) no-repeat center center; background-size: cover;  display: flex; justify-content: space-between; }
.youkouArea .flex a { width: calc( 100% / 3 ); display: flex; justify-content: center; align-items: center; color: #fff; font-size: 2.8rem; font-weight: 300; letter-spacing: 1rem;  background: rgba(44,50,63,0.8); border-right: solid 3px #ebf5f2; position: relative; }
.youkouArea .flex a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; left: 49%; top: 60%; }
.youkouArea .flex a:hover { background: rgba(40,110,80,0.8); opacity: 1; transition: transform 0.6s ease-in-out; transform: scale(1); }
.youkouArea .flex a:hover:after { transform: scale(3); background: url(assets/images/arrow.svg) no-repeat; background-size: cover; }
@media only screen and (max-width: 766px) {
    .youkouArea { width: 100%; margin: 2rem 0 5rem!important; height: 130px; }
    .youkouArea .flex a { font-size: 1.8rem; letter-spacing: 0; padding: 3rem 0; }
    .youkouArea .flex a:after { top: 75%; }

}


footer { background: #fff; padding: 6rem 0; color: #fff; }
footer h6 img { width: 200px; height: auto; display: block; margin: 20px auto; }
footer .fmenuArea { width: calc(80% - 200px); }

footer .fmenuArea ul { width: calc( 100% / 3 ); margin: 0 0 2rem 0; }
footer .fmenuArea ul li { width: 100%; font-size: 1.6rem; font-weight: 400; color: #0f4c93; }
footer .fmenuArea ul li a { color: #0f4c93; font-size: 2rem; }
footer .fmenuArea ul li ul { width: 100%; }
footer .fmenuArea ul li ul li { margin: 1rem auto 1rem 0.5rem; }
footer .fmenuArea ul li ul li a { color: #2c323f; font-size: 1.6rem; }
footer .fSubMenu { display: flex; justify-content: flex-end; }
footer .fSubMenu li { padding: 0 2rem; }
footer .fSubMenu li a { font-size: 1.6rem;/*new*/ position: relative; padding-left: 1.5rem; }
footer .fSubMenu li a::before { content: ''; background: #319a4b; height: calc(tan(60deg) * 12px / 2); width: 8px; clip-path: polygon(0 0, 100% 50%, 0 100%); position: absolute; top: 25%; left: 0; }
footer .fBanner { width: 30%; position: absolute; bottom: 5%; left: 0; box-shadow: 0px 0px 15px -5px #777777; }

@media only screen and (max-width: 766px) {
    footer .flex { display: block; }
    footer .fmenuArea { width: 100%; display: none; }
    footer .fBanner { position: static; width: 80%; margin: 2rem auto; display: block;}
    footer .fBanner img { width: 80%; }
    footer .fSubMenu li a { font-size: 1.4rem; }
    footer .fSubMenu { display: block;}
}

/*breadcrumb*/
#breadcrumbs { padding:1rem 0; }
#breadcrumbs ul { display: flex; justify-content: flex-start; }
@media only screen and (max-width: 766px) {
    #breadcrumbs ul { display: flex; justify-content: flex-start; flex-wrap: wrap; }
    #breadcrumbs ul li { font-size: 1.4rem!important; }
}




/**FRONT PAGR**/
/*
.visualBar01 { position: absolute; top: 45vw; left: 5%; z-index: -1; background: #fff; width: 60%; height: 160vw; }
*/



.home section { z-index: 2; padding :30px 0; }
@media only screen and (max-width: 766px) {
    .home section { margin: 10px; }
    .home .youkouArea { padding: 0; }
}
.homeVisual { padding: 3rem 0; position: relative; height: 50vw; z-index: 2; }
.homeVisual .copyArea { position: absolute; top: 10%; left: 5%; z-index: 5; width: 45%; }
.homeVisual .copyArea .fontEn { font-size: 4.8vw; }
.homeVisual .copyArea .fontJpCopy { font-size: 2.4vw; }
.homeVisual .homeVisualImage01 { position: absolute; right: 0; top: 5%; width: 60%; }
.homeVisual .homeVisualImage02 { position: absolute; left: 26%; bottom: 5%; width: 20%; }
.homeVisual .homeVisualImage03 { position: absolute; left: 0; bottom: 25%; width: 25%; }
.homeVisual .visualBar01 { position: absolute; bottom: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 40%; }

@media only screen and (max-width: 766px) {
    .homeVisual { height: 70vw; }
    .homeVisual .copyArea { width: 60%; }
    .homeVisual .copyArea .fontEn { font-size: 6vw; }
    .homeVisual .copyArea .fontJpCopy { font-size: 5vw; }
    .homeVisual .homeVisualImage01 { right: 0; top: 30%; width: 64%; }
    .homeVisual .homeVisualImage02 { left: 26%; bottom: 0%; width: 25%; }
    .homeVisual .homeVisualImage03 { left: 0; bottom: 25%; width: 30%; }
    .homeVisual .visualBar01 { bottom: 8%; left: 10%; z-index: -1; width: 60%; height: 50%; }

}

.homePickup { padding: 3rem 0; position: relative; }
.homePickup .pickupCont { width: calc( 100% - 28vw); }
.homePickup .pickupCont ul { padding: 2rem 0 0 0; }
.homePickup .pickupCont li { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 2rem; }
.homePickup .pickupCont li img { margin-right: 2rem; max-width: 48px;}
.homePickup .pickupCont li a { width: 100%; display: block; position: relative; }
.homePickup .pickupCont li a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homePickup .pickupCont li a:hover { background: url(assets/images/arrow.svg) no-repeat right center; }
.homePickup .pickupCont li a:hover:after { content: none; }
.homePickup .visualBar01 { position: absolute; bottom: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 100%; }

@media only screen and (max-width: 766px) {
    .homePickup .flex { display: block; margin: 0 auto; }
    .homePickup .visualBar01 { width: 95%; left: 2.5%; }
    .homePickup .pickupCont { padding: 0 5%; width: 100%; }
    .homePickup .pickupCont li a { font-size: 1.4rem; }
}


.homeMessage { padding: 3rem 0; position: relative; }
.homeMessage .flex { flex-direction: row-reverse; }
.homeMessage .flex div:nth-of-type(1) { width: 22vw; }
.homeMessage .flex div:nth-of-type(1) .copy { writing-mode: vertical-rl; font-size: 2.0vw; font-family: "dnp-shuei-mincho-pr6n"; letter-spacing: 1rem; line-height: 1.6; margin: 2rem 0 4rem 4rem; }
.homeMessage .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeMessage .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeMessage .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeMessage .flex div:nth-of-type(1) a:hover:after { content: none; }
.homeMessage .flex div:nth-of-type(2) { width: calc( 100% - 24vw); position: relative; }
.homeMessage .flex div:nth-of-type(2) img { margin: 2rem 0 4rem -12%; width: 100%; }
.homeMessage .flex div:nth-of-type(2) p { width: 90%; padding: 0 9rem 4rem 4rem; font-size: 1.4rem; line-height: 2.6; }
.homeMessage .visualBar01 { position: absolute; bottom: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 100%; }


.homeField { padding: 3rem 0; position: relative; }
.homeField .flex { flex-direction: row; }
.homeField .flex div:nth-of-type(1) { width: 26vw; }
.homeField .flex div:nth-of-type(1) .copy { writing-mode: vertical-rl; font-size: 2.0vw; font-family: "dnp-shuei-mincho-pr6n"; letter-spacing: 1rem; line-height: 1.6; margin: 2rem 0 4rem 45%; }
.homeField .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeField .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeField .flex div:nth-of-type(2) { width: calc( 100% - 28vw); position: relative; }
.homeField .flex div:nth-of-type(2) img { width: 100%; margin: 2rem 0 4rem 7.5%;  }
.homeField .flex div:nth-of-type(2) p { width: 90%; padding: 0 0 4rem 6rem; font-size: 1.4rem; line-height: 2.6; }
.homeField .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin: 0 auto 3rem; width: 80%; display: block; position: relative; }
.homeField .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeField .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeField .flex div:nth-of-type(1) a:hover:after { content: none; }
.homeField .visualBar01 { position: absolute; top: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 55%; }


.homeField2 { padding: 3rem 0; position: relative; }
.homeField2 .flex { flex-direction: row-reverse; }
.homeField2 .flex div:nth-of-type(1) { width: 30vw; }
.homeField2 .flex div:nth-of-type(1) .copy { writing-mode: vertical-rl; font-size: 2.0vw; font-family: "dnp-shuei-mincho-pr6n"; letter-spacing: 1rem; line-height: 1.6; margin: 2rem 0 4rem 10rem; }
.homeField2 .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeField2 .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeField2 .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeField2 .flex div:nth-of-type(1) a:hover:after { content: none; }
.homeField2 .flex div:nth-of-type(1) h3 { margin-left: 0!important;; }
.homeField2 .flex div:nth-of-type(2) { width: calc( 100% - 31vw); position: relative; }
.homeField2 .flex div:nth-of-type(2) img { margin: 2rem 0 4rem -12%; width: 100%; }
.homeField2 .flex div:nth-of-type(2) p { width: 90%; padding: 0 9rem 4rem 4rem; font-size: 1.6rem;/*new*/ line-height: 2.6; }
.homeField2 .visualBar01 { position: absolute; bottom: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 100%; }

@media only screen and (max-width: 766px) {
    .homeField2 { padding: 2rem!important; }
    .homeField2 .flex { flex-direction: column; }
    .homeField2 .flex div:nth-of-type(1) { width: 100%; }
    .homeField2 .flex div:nth-of-type(1) a { font-size: 1.4rem; }

    .homeField2 .flex div:nth-of-type(2) { width: 100%; }
    .homeField2 .flex div:nth-of-type(1) .copy { writing-mode: horizontal-tb; font-size: 5.0vw; position: relative; margin: 2rem 0 4rem; text-align: center; }
    .homeField2 .flex div:nth-of-type(2) p { width: 100%; padding: 1rem; font-size: 1.4rem;/*new*/ line-height: 1.6; }
    .homeField2 .flex div:nth-of-type(2) img { margin: 2rem 0 2rem -12%; width: 100%; }

    .homeField2 .visualBar01 { width: 95%; height: 100%; left: 2.5%; }

}





.homePeople { padding: 3rem 0 10rem!important; position: relative; background: url(assets/images/docon.svg) no-repeat bottom center; background-size: contain; }
.homePeople .flex { flex-direction: row-reverse; }
.homePeople .flex div:nth-of-type(1) { width: 22vw; }
.homePeople .flex div:nth-of-type(1) .copy { writing-mode: vertical-rl; font-size: 2.0vw; font-family: "dnp-shuei-mincho-pr6n"; letter-spacing: 1rem; line-height: 1.6; margin: 2rem 0 4rem 4rem; }
.homePeople .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homePeople .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homePeople .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homePeople .flex div:nth-of-type(1) a:hover:after { content: none; }
.homePeople .flex div:nth-of-type(2) { width: calc( 100% - 24vw); position: relative; }
.homePeople .flex div:nth-of-type(2) img { margin: 2rem 0 4rem -12%; width: 100%; }
.homePeople .flex div:nth-of-type(2) p { width: 90%; padding: 0 9rem 4rem 4rem; font-size: 1.4rem; line-height: 2.6; }
.homePeople .visualBar01 { position: absolute; top: 0; left: 8%; z-index: -1; background: #fff; width: 60%; height: 30%; }


.homePeople2 { padding: 3rem 0; position: relative; }
.homePeople2 .flex { flex-direction: row; }
.homePeople2 .flex div:nth-of-type(1) { width: 27vw; }
.homePeople2 .flex div:nth-of-type(1) .copy { writing-mode: vertical-rl; font-size: 2.0vw; font-family: "dnp-shuei-mincho-pr6n"; letter-spacing: 1rem; line-height: 1.6; margin: 2rem 0 4rem 45%; }
.homePeople2 .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homePeople2 .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homePeople2 .flex div:nth-of-type(2) { width: calc( 100% - 29vw); position: relative; }
.homePeople2 .flex div:nth-of-type(2) img { width: 100%; margin: 2rem 0 4rem 11%;  }
.homePeople2 .flex div:nth-of-type(2) p { width: 90%; padding: 0 0 4rem 6rem; font-size: 1.6rem;/*new*/ line-height: 2.6; }
.homePeople2 .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin: 0 auto 3rem; width: 80%; display: block; position: relative; }
.homePeople2 .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homePeople2 .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homePeople2 .flex div:nth-of-type(1) a:hover:after { content: none; }
.homePeople2 .visualBar01 { position: absolute; top: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 55%; }

@media only screen and (max-width: 766px) {
    .homePeople2 { padding: 2rem!important; }
    .homePeople2 .flex { flex-direction: column; }
    .homePeople2 .flex div:nth-of-type(1) { width: 100%; }
    .homePeople2 .flex div:nth-of-type(2) { width: 100%; }

    .homePeople2 .flex div:nth-of-type(1) .copy { writing-mode: horizontal-tb; font-size: 4.4vw; position: relative; margin: 2rem 0 4rem; text-align: center; letter-spacing: 0.5rem; }
    .homePeople2 .flex div:nth-of-type(1) a { width: 100%; font-size: 1.4rem; }

    .homePeople2 .flex div:nth-of-type(2) p { width: 90%; padding: 0 0 4rem 0; font-size: 1.4rem;/*new*/ line-height: 1.6; }


    .homePeople2 .visualBar01 { width: 95%; left: 2.5%; height: 100%; }

}



.homeWorkstyle2 { padding: 3rem 0; position: relative; margin-top: 100px; }
.homeWorkstyle2 .flex { flex-direction: row-reverse; }
.homeWorkstyle2 .flex div:nth-of-type(1) { width: 45vw; }
.homeWorkstyle2 .flex div:nth-of-type(1) p { width: 100%; padding: 0 0 3rem 3rem; font-size: 1.6rem;/*new*/ line-height: 2.6; }
.homeWorkstyle2 .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeWorkstyle2 .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeWorkstyle2 .flex div:nth-of-type(2) { width: calc( 100% - 50vw); position: relative; }
.homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(1) { width: 100%; margin: -10rem 0 4rem 10.5%; }
.homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(2) { width: 40%; margin: 3rem 0 4rem 10.5%; }
.homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(3) { width: 25%; margin: -4rem 0 6rem 5rem; }
.homeWorkstyle2 .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin: 2rem; width: 43%; display: block; position: relative; }
.homeWorkstyle2 .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeWorkstyle2 .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeWorkstyle2 .flex div:nth-of-type(1) a:hover:after { content: none; }
.homeWorkstyle2 .flex div:nth-of-type(1) a img { margin-right: 2rem;}
.homeWorkstyle2 .subContentLink { display: flex; flex-wrap: wrap; }
.homeWorkstyle2 .subContentLink a { width: 45%; }
.homeWorkstyle2 .visualBar01 { position: absolute; top: 0; right: 3%; z-index: -1; background: #fff; width: 60%; height: 90%; }

@media only screen and (max-width: 766px) {
    .homeWorkstyle2 { padding: 2rem!important; }

    .homeWorkstyle2 .flex { flex-direction: column; }
    .homeWorkstyle2 .flex div:nth-of-type(1) { width: 100%; }
    .homeWorkstyle2 .flex div:nth-of-type(2) { width: 100%; }

    .homeWorkstyle2 .flex div:nth-of-type(1) p { width: 90%; padding: 0; margin: 0 auto 4rem; font-size: 1.4rem; line-height: 1.6; }

    .homeWorkstyle2 .subContentLink { display: flex; flex-wrap: wrap; }
    .homeWorkstyle2 .subContentLink a { width: 38%; }

    .homeWorkstyle2 .flex div:nth-of-type(1) a { width: 100%; font-size: 1.4rem; margin: 0 auto 3rem; }

    .homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(1) { width: 100%; margin: -1rem 0 4rem 10.5%; }
    .homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(2) { width: 40%; margin: 3rem 0 4rem 10.5%; }
    .homeWorkstyle2 .flex div:nth-of-type(2) img:nth-of-type(3) { width: 25%; margin: -4rem 0 6rem 5rem; }


    .homeWorkstyle2 .visualBar01 { width: 95%; left: 2.5%; height: 100%; }

}



.homeWorkstyle { padding: 3rem 0; position: relative; }
.homeWorkstyle .flex { flex-direction: row; }
.homeWorkstyle .flex div:nth-of-type(1) { width: 45vw; }
.homeWorkstyle .flex div:nth-of-type(1) p { width: 100%; padding: 0 0 3rem 3rem; font-size: 1.4rem; line-height: 2.6; }
.homeWorkstyle .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeWorkstyle .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeWorkstyle .flex div:nth-of-type(2) { width: calc( 100% - 50vw); position: relative; }
.homeWorkstyle .flex div:nth-of-type(2) img:nth-of-type(1) { width: 100%; margin: -10rem 0 4rem 10.5%; }
.homeWorkstyle .flex div:nth-of-type(2) img:nth-of-type(2) { width: 40%; margin: 3rem 0 4rem 10.5%; }
.homeWorkstyle .flex div:nth-of-type(2) img:nth-of-type(3) { width: 25%; margin: -4rem 0 6rem 5rem; }
.homeWorkstyle .flex div:nth-of-type(1) a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin: 2rem; width: 43%; display: block; position: relative; }
.homeWorkstyle .flex div:nth-of-type(1) a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 45%; }
.homeWorkstyle .flex div:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeWorkstyle .flex div:nth-of-type(1) a:hover:after { content: none; }
.homeWorkstyle .subContentLink { display: flex; flex-wrap: wrap; }
.homeWorkstyle .subContentLink a { width: 45%; }
.homeWorkstyle .visualBar01 { position: absolute; top: 0; left: 5%; z-index: -1; background: #fff; width: 60%; height: 90%; }



.homeInside { padding: 3rem 0; position: relative; }
.homeInside .flex { flex-direction: row; }
.homeInside .flex h3 { width: 30vw; }
.homeInside .flex div { width: calc( 100% - 33vw); position: relative; }
.homeInside .flex div ul:nth-of-type(1) { display: flex; justify-content: space-between; flex-wrap: wrap; }
.homeInside .flex div ul:nth-of-type(1) li { width: calc( 94% / 2 ); }
.homeInside .flex div ul:nth-of-type(1) li a { border-bottom: solid 2px #319a4b; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.homeInside .flex div ul:nth-of-type(1) li a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 25%; }
.homeInside .flex div ul:nth-of-type(1) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.homeInside .flex div ul:nth-of-type(1) a:hover:after { content: none; }
.homeInside .flex div ul:nth-of-type(2) { display: flex; justify-content: space-around; }
.homeInside .flex div ul:nth-of-type(2) li { width: calc( 94% / 2 ); }
.homeInside .flex div ul:nth-of-type(2) li a { border: solid 2px #2c323f; padding: 1.4rem; margin: 3rem; width: 100%; display: block; position: relative; }
.homeInside .flex div ul:nth-of-type(2) li a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 15px; top: 45%; }
.homeInside .flex div ul:nth-of-type(2) a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; border: solid 2px #319a4b; }
.homeInside .flex div ul:nth-of-type(2) a:hover:after { content: none; }
.homeInside .subContentLink { display: flex; flex-wrap: wrap; }
.homeInside .subContentLink a { width: 45%; }
.homeInside .shiruwakaruArea { margin-top: 3rem; }

@media only screen and (max-width: 766px) {
    .homeInside .flex { flex-direction: column; }
    .homeInside .flex h3 { width: 100%; }
    .homeInside .flex div { width: 100%; }
    .homeInside .flex div ul:nth-of-type(1) li a { font-size: 1.4rem; }

    .homeInside .flex div ul:nth-of-type(2) li { width: calc( 90% / 2 ); }
    .homeInside .flex div ul:nth-of-type(2) li a { margin: 1rem; font-size: 1.4rem; }


}



/*PAGE COMMON*/
.ContTitle { font-size: 2.4vw; font-weight: 400; color: #2c323f; font-family: "dnp-shuei-mincho-pr6n"; position: relative; }
.ContTitle::after { content: ''; position: absolute; bottom: 0; left: 5px; width: 30px; height: 2px; background: #319a4b; }
.ContTitle span { font-size: 1.8vw; font-family: "Marcellus", serif; display: block; padding: 1rem 0 1rem 0.5rem; }

@media only screen and (max-width: 766px) {
    .ContTitle { font-size: 5vw; font-weight: 400; margin: 2rem 2rem 0; letter-spacing: 0.5rem; }
    .ContTitle span { font-size: 4vw; }
}


.page .ContTitle { letter-spacing: 0.7rem; }
.page main { padding-top:5rem; background: url(assets/images/docon.svg) no-repeat center 100px; background-size: contain; }
@media only screen and (max-width: 766px) {
    .page main { padding-top:0; }
    .page .ContTitle { letter-spacing: 0.5rem; }

}
.pageContentRecomendArea { width: 100%; margin: 5rem auto 3rem; }
.pageContentRecomendArea ul { display: flex; justify-content: space-around; }
.pageContentRecomendArea li { width: calc( 94% / 3 ); }
.pageContentRecomendArea li a { border-bottom: solid 1px #2c323f; padding: 1.4rem; margin: 3rem; width: 100%; display: block; position: relative; }
.pageContentRecomendArea li a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 15px; top: 45%; }
.pageContentRecomendArea a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; border-bottom: solid 1px #319a4b; }
.pageContentRecomendArea a:hover:after { content: none; }
@media only screen and (max-width: 766px) {
    .pageContentRecomendArea ul { flex-wrap: wrap; }
    .pageContentRecomendArea li { width: 90%; }
    .pageContentRecomendArea li a { margin: 1rem auto; }
}

.whiteBgArea { padding: 4rem; background: #fff; }
.verticalText { writing-mode: vertical-rl; }
.greenBoxedArea { border: solid 2px #319a4b; padding: 4rem; }
.greenBoxedAreaLast { border: solid 2px #319a4b; padding: 4rem; }
@media only screen and (max-width: 766px) {
.greenBoxedArea {  padding: 2rem; }
.greenBoxedArea .listMaru { margin: 0; }
 .greenBoxedAreaLast{padding: 2rem; margin: 1rem !important; }
}

/*single*/
.single-post .ContTitle { letter-spacing: 0.7rem; }
.single-post main { padding-top:5rem; background: url(assets/images/docon.svg) no-repeat center 100px; background-size: contain; }
.single-post .singleArea { background: #fff; width: 100%; padding: 5%; margin-bottom: 5%; }
.single-post h4 { font-size: 2.7rem; }
.single-post h5 { border-bottom: 1px solid; padding: 1% 0; }
.single-post p { padding: 1% 0; }
.single-post .btnArea { text-align: center; margin-bottom: 5%; }
.single-post .btnArea a { background: #319a4b; color: #fff; padding: 1% 5%; border-radius: 30px;  } 
@media only screen and (max-width: 766px) {
    .single-post .singleArea { padding: 10% 5%; }
    .single-post h5 { padding: 4% 0; }
    .single-post p { line-height: 2; }
    .single-post .btnArea { margin: 15% 0; }
    .single-post .btnArea a {  width: 70%; display: block; margin: 0 auto; padding: 5%; } 
}


/*interview*/
.interview .searchItemArea p { width: 160px; padding-top: 1.4rem; }
.interview .searchItemArea p span { width: 100%; padding-right: 30px; position: relative; display: block; }
.interview .searchItemArea p span::after { position: absolute; top:50%; right: 10px; content: ''; width: 20px; height: 2px; background: #319a4b; }
.interview .searchItemArea .tagPartsArea { position: relative; width: 86%; }
.interview .searchItemArea li { margin: 1.4rem 1rem; }
.interview .searchItemArea li label { padding: 1rem 3rem; background: #e7e7e7; text-align: center; font-size: 1.4rem; border-radius: 30px; cursor: pointer; }
.interview .searchItemArea li.active label { background: #319a4b; color: #fff;}
#tag-filter input[type="checkbox"] { display: none; }
.interview h4 { position: relative; color: #319a4b; font-family: "Marcellus", serif; font-size: 2.6rem; font-weight: 500; }
.interview h4::after { position: absolute; content: ''; background: #319a4b; width: 95%; height: 2px; top: 50%; left: 10%; } 
.interview .serachResaltArea { position: relative; justify-content: flex-start; }
.interview .serachResaltArea article { width: calc( 86% / 5 ); margin: 3% 1%; background: #fff; }
.interview .serachResaltArea article a { display: block; border: solid 3px rgba(49,154,123,0); }
.interview .serachResaltArea article a:hover { border: solid 3px #319a4b; }
.interview .serachResaltArea article img { display: block; max-width: 100%; margin-bottom: 1rem; }
.interview .serachResaltArea article p:nth-of-type(1) { font-size: 1.3vw; padding: 0.5rem; font-family: "Marcellus", serif; }
.interview .serachResaltArea article p:nth-of-type(2) { font-size: 1.6rem;/*new*/ padding: 0.5rem; }
.interview .serachResaltArea article p:nth-of-type(3) { font-size: 1.6rem;/*new*/ padding: 0.5rem; text-align: right; }
.interview .serachResaltArea .visualBar01 { position: absolute; width: 8%; height: 90%; top: 5%; left: -10%; background: #fff; z-index: -1; }
.interview .serachResaltArea .visualBar02 { position: absolute; width: 53%; height: 90%; top: 5%; right: -5.5%; background: #fff; z-index: -1; }
@media only screen and (max-width: 766px) {
    .interview .searchItemArea { padding: 1rem!important; }
    .interview .searchItemArea p { width: 100%; padding-bottom: 0.7rem; border-bottom: solid 1px #319a4b; margin-bottom: 1rem; padding-left: 3rem; }
    .interview .searchItemArea p::after { display: none; }
    .interview .searchItemArea ul { width: 100%; display: flex; justify-content: flex-start; }
    .interview .searchItemArea li { margin: 0.5rem; padding: 0.7rem 0; font-size: 1.3rem; }
    .interview .searchItemArea li label { font-size: 1.2rem; padding: 1rem 2rem;}
    .interview .searchItemArea p::before { content: "▼"; position: absolute; left: 1%; top: 26%; }
    .interview .searchItemArea p.open::before { content: "▶"; }
    .interview .searchItemArea p + .tagPartsArea { display: none; }
    .interview .searchItemArea .tagPartsArea { width: 100%;}
    .interview h4 { border-bottom: solid 2px #319a4b; padding-bottom: 0.5rem; margin-bottom: 1rem; }
    .interview h4::after { display: none; } 
    .interview .serachResaltArea article { width: calc( 96% / 2 );  }
    .interview .serachResaltArea article p:nth-of-type(1) { font-size: 1.6rem; }
}


/*interviewSingle*/
.single-messages  main { padding-top:5rem; background: url(assets/images/docon.svg) no-repeat center 100px; background-size: contain; }

.interviewWrap { position: relative; }
.interviewWrap .visualBar01 { position: absolute; width: 105.5%; height: 100%; top: 0%; right: -5.5%; background: #fff; z-index: -1; }
.interviewArea01 { padding: 4rem 0 4rem 4rem; position: relative; }
.interviewArea01 .flex .textArea { width: 40%; padding-right: 2rem; }
.interviewArea01 .message-group { color: #2c323f; /*position: absolute; top: 35%; display: inline; background: #fff; padding: 1%;*/ margin-top: 5vw; }
.interviewArea01 .message-group h4 { /*padding-top: 2%;*/ }
.interviewArea01 .flex .textArea .nameArea { position: absolute; bottom: 4rem; }
.interviewArea01 .flex .textArea .nameArea p:nth-of-type(1) { font-size: 3.5rem; font-family: "Marcellus", serif; margin-bottom: 2rem; }
.interviewArea01 .flex .textArea .nameArea p:nth-of-type(2) { font-size: 1.6rem; margin-bottom: 1rem; display: none; }
.interviewArea01 .flex .textArea .nameArea p:nth-of-type(3) { font-size: 1.6rem; margin-bottom: 1rem; }
.interviewArea01 .flex .textArea .nameArea p:nth-of-type(4) { font-size: 1.6rem; margin-bottom: 1rem; }
.interviewArea01 .flex .textArea .nameArea p:nth-of-type(5) { font-size: 1.6rem; }
.interviewArea01 .flex img { width: 60%; }
.interviewArea02 { /*padding: 4rem 4rem 4rem 0;*/ padding: 10rem 0 0; display: flex; }
.interviewArea02 div:nth-of-type(1) { width: 60%; }
.interviewArea02 div:nth-of-type(1) img { width: 100%; }
.interviewArea02 div:nth-of-type(2) { width: 40%; padding-left: 2rem; }
.interviewArea02 div:nth-of-type(2) div { width: 100%; margin: 0; padding: 0 0 4rem 4rem; background: #fff; }
.interviewArea02 div:nth-of-type(2) div h5 { font-size: 2.2rem; position: relative; margin-bottom: 3rem; padding-left: 3rem; }
.interviewArea02 div:nth-of-type(2) div h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.interviewArea02 div:nth-of-type(2) div p { line-height: 2.2; margin-bottom: 5rem; }

/*20251127文字サイズテスト用*/
.interviewArea02 div:nth-of-type(2) div p span:nth-of-type(2) { font-size: 1.6rem; font-weight: 500; }
.interviewArea02 div:nth-of-type(2) div p span:nth-of-type(3) { font-size: 1.8rem; }



.interviewArea03 { padding: 4rem 0; display: flex; }
.interviewArea03 div:nth-of-type(1) { width: 60%; }
.interviewArea03 div:nth-of-type(1) img { width: 100%; }
.interviewArea03 div:nth-of-type(2) { width: 40%; padding-left: 2rem; }
.interviewArea03 div:nth-of-type(2) div { width: 100%; margin: 0; padding: 0 0 4rem 4rem; background: #fff; }
.interviewArea03 div:nth-of-type(2) div h5 { font-size: 2.2rem; position: relative; margin-bottom: 3rem; padding-left: 3rem; }
.interviewArea03 div:nth-of-type(2) div h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.interviewArea03 div:nth-of-type(2) div p { line-height: 2.2; margin-bottom: 5rem; }

.interviewArea04 { padding: 4rem 0 4rem 4rem; width: 95%; margin: 0 0 0 10.5%; background: rgba(49,154,123,0.08); }
.interviewArea04 h5 { font-size: 2.2rem; position: relative; margin-bottom: 3rem; padding-left: 3rem; }
.interviewArea04 h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.interviewArea04 dl { display: flex; margin-bottom: 4rem; }
.interviewArea04 dl dt { color: #319a4b; font-family: "Marcellus", serif; font-weight: 600; width: 65px; padding-left: 2rem; position: relative; line-height: 1.4; }
.interviewArea04 dl dt::before { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; left: 5px; top: 8px; } 
.interviewArea04 dl dd { line-height: 1.4; padding: 0 2rem; position: relative; width: 75%; }
.interviewArea04 dl dd:nth-of-type(1) { width: 13%; text-align: center; }
.interviewArea04 dl dd:nth-of-type(1)::after { position: absolute; content: '/'; right: 0; }

.interviewArea05 { padding: 4rem 0; display: flex; }
.interviewArea05 div:nth-of-type(1) { width: 60%; }
.interviewArea05 div:nth-of-type(1) img { width: 100%; }
.interviewArea05 div:nth-of-type(2) { width: 40%; padding-left: 2rem; }
.interviewArea05 div:nth-of-type(2) div { width: 100%; margin: 0; padding: 0 0 4rem 4rem; background: #fff; }
.interviewArea05 div:nth-of-type(2) div h5 { font-size: 2.2rem; position: relative; margin-bottom: 3rem; padding-left: 3rem; }
.interviewArea05 div:nth-of-type(2) div h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.interviewArea05 div:nth-of-type(2) div p { line-height: 2.2; margin-bottom: 5rem; }

.interviewArea06 { padding: 4rem; }
.interviewArea06 h4 { position: relative; color: #319a4b; font-family: "Marcellus", serif; font-size: 2.6rem; font-weight: 500; margin-bottom: 4rem; }
.interviewArea06 h4::after { position: absolute; content: ''; background: #319a4b; width: 95%; height: 2px; top: 50%; left: 10%; } 
.interviewArea06 .flex { flex-direction: row-reverse; }
.interviewArea06 .flex div:nth-of-type(1) { width: 40%; }
.interviewArea06 .flex div:nth-of-type(1) img { width: 100%; }
.interviewArea06 .flex div:nth-of-type(2) { width: 100%; }
.interviewArea06 .flex div:nth-of-type(2) div {  width: 100%;}
.interviewArea06 .flex div:nth-of-type(2) div h5 { font-size: 2.2rem; position: relative; margin-bottom: 3rem; padding-left: 3rem; }
.interviewArea06 .flex div:nth-of-type(2) div p { line-height: 2.2; margin-bottom: 2rem; }

@media only screen and (max-width: 766px) {
    .interviewWrap .visualBar01 { width: 100%; right: 0%; }

    .interviewArea01 { padding: 2rem 0 2rem 2rem; }
    .interviewArea01 .flex { flex-direction: column/*column-reverse*/; }
    .interviewArea01 .flex .textArea { width: 100%; margin-bottom: 1rem; }
    .interviewArea01 .message-group { position: relative; top: 0; padding: 0; }
    .interviewArea01 .message-group h5 { font-size: 1.8rem!important; }
    .interviewArea01 .message-group h4 { font-size: 1.4rem!important; padding: 0.7rem 1rem; }
    .interviewArea01 .flex .textArea .nameArea { position: relative; bottom: 0; }
    .interviewArea01 .flex .textArea .nameArea p:nth-of-type(1) { font-size: 2.5rem; }
    .interviewArea01 .flex .textArea .nameArea p:nth-of-type(2) { font-size: 1.3rem; margin-bottom: 0.5rem; display: block; }
    .interviewArea01 .flex .textArea .nameArea p:nth-of-type(3) { font-size: 1.3rem; margin-bottom: 0.5rem; }
    .interviewArea01 .flex .textArea .nameArea p:nth-of-type(4) { font-size: 1.3rem; }
    .interviewArea01 .flex .textArea .nameArea p:nth-of-type(5) { font-size: 1.3rem; }
    .interviewArea01 .flex img { width: 100%; margin: 0 auto 1rem; }

    .interviewArea02 { padding: 2rem 2rem 2rem 0; flex-direction: column-reverse; }
    .interviewArea02 div:nth-of-type(1) { width: 100%; }
    .interviewArea02 div:nth-of-type(1) img { width: 100%; margin: 1rem; }

    .interviewArea02 div:nth-of-type(2) { width: 100%; }
    .interviewArea02 div:nth-of-type(2) div { width: 100%; margin: 2rem 0 0 0%; padding: 2rem 0 2rem 2rem; }
    .interviewArea02 div:nth-of-type(2) div h5 { font-size: 2rem; font-weight: 500; margin-left: -3rem; }
    .interviewArea02 div:nth-of-type(2) div p { line-height: 1.8; }

    .interviewArea03 { padding: 2rem 2rem 2rem 0;  flex-direction: column-reverse; }
    .interviewArea03 div:nth-of-type(1) { width: 100%; }
    .interviewArea03 div:nth-of-type(1) img { width: 100%; margin: 1rem; }
    .interviewArea03 div:nth-of-type(2) { width: 100%; }
    .interviewArea03 div:nth-of-type(2) div { width: 100%; margin: 2rem 0 0 0%; padding: 2rem 0 2rem 2rem; }
    .interviewArea03 div:nth-of-type(2) div h5 { font-size: 2rem; font-weight: 500; margin-left: -3rem; }
    .interviewArea03 div:nth-of-type(2) div p { line-height: 1.8; }

    .interviewArea04 { padding: 2rem 0 2rem 2rem; width: 95%; margin: 0 auto; background: rgba(49,154,123,0.08); }
    .interviewArea04 h5 { font-size: 2rem;  }
    .interviewArea04 h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
    .interviewArea04 dl { display: block; margin-bottom: 4rem; }
    .interviewArea04 dl dt { color: #319a4b; font-family: "Marcellus", serif; font-weight: 600; width: 100%; padding-left: 2rem; position: relative; line-height: 1.4; }
    .interviewArea04 dl dt::before { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; left: 5px; top: 8px; } 
    .interviewArea04 dl dd { line-height: 1.4; padding: 0 2rem; position: relative; width: 100%; }
    .interviewArea04 dl dd:nth-of-type(1) { width: 100%; text-align: left; font-weight: 500; }
    .interviewArea04 dl dd:nth-of-type(1)::after { display: none; }
    .interviewArea04 dl dd:nth-of-type(2) { font-size: 1.4rem; }

    .interviewArea05 { padding: 2rem 2rem 2rem 0;  flex-direction: column-reverse; }
    .interviewArea05 div:nth-of-type(1) { width: 100%; }
    .interviewArea05 div:nth-of-type(1) img { width: 100%; margin: 1rem; }
    .interviewArea05 div:nth-of-type(2) { width: 100%; }
    .interviewArea05 div:nth-of-type(2) div { width: 100%; margin: 2rem 0 0 0%; padding: 2rem 0 2rem 2rem; }
    .interviewArea05 div:nth-of-type(2) div h5 { font-size: 2rem; position: relative; font-weight: 500; margin-left: -3rem; }
    .interviewArea05 div:nth-of-type(2) div p { line-height: 1.8; }


    .interviewArea06 { padding: 2rem; }
    .interviewArea06 h4 { font-size: 2.0rem; border-bottom: solid 2px #319a4b; padding-bottom: 0.5rem; margin-bottom: 1rem; }
    .interviewArea06 h4::after { display: none; } 
    .interviewArea06 .flex div:nth-of-type(2) div p { line-height: 1.8; }


}




/*数字で見るドーコン dokon_in_numbers*/
.dokon_in_numbers .Page .wp-block-column { padding: 4rem; background: #fff; margin: 4rem auto; }
.dokon_in_numbers .Page .wp-block-column p:nth-of-type(1) { font-family: "Marcellus", serif; font-size: 2.4rem; font-weight: 400; color:#319a4b; }
.dokon_in_numbers .Page .wp-block-column h3 { text-align: center; margin: 0 auto 2rem; font-family: "dnp-shuei-mincho-pr6n"; color: #333; font-size: 2.6rem; }
.dokon_in_numbers .Page .wp-block-column img { border-bottom: solid 1px #ccc; margin-bottom: 1rem; }
@media only screen and (max-width: 766px) {
    .dokon_in_numbers .Page .wp-block-column { margin: 2rem; }
}


/*動画で見るドーコン movie*/
.movie .Page .wp-block-column { padding: 4rem; background: #fff; margin: 4rem auto; }
.movie .Page .wp-block-column p:nth-of-type(1) { font-family: "Marcellus", serif; font-size: 2.4rem; font-weight: 400; color:#319a4b; }
.movie .Page .wp-block-column h3 { text-align: center; margin: 0 auto 2rem; font-family: "dnp-shuei-mincho-pr6n"; color: #333; font-size: 2.6rem; }
.movie .Page .wp-block-column img { border: solid 1px #ccc; margin-bottom: 1rem; }
@media only screen and (max-width: 766px) {
    .movie .Page .wp-block-column { margin: 2rem; }
}


/*分野 field*/
.field .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); }
.field .wp-block-group__inner-container { display: flex; align-items: center; position: relative; }
.field .wp-block-group__inner-container :nth-child(1) { order: 1; }
.field .wp-block-group__inner-container :nth-child(2) { order: 3; }
.field .wp-block-group__inner-container :nth-child(3) { order: 2; }
.field .wp-block-group__inner-container .number { padding: 2rem 4rem; color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; }
.field .wp-block-group__inner-container .number:before { position: absolute; content: ''; width: 20px; height: 1px; background: #319a4b; left: 0; top: 50%; }
.field .wp-block-group__inner-container img { position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 40%; }
.field .wp-block-group__inner-container .wp-block-group { background: #fff; padding: 4rem; width: 80%; }
.field .wp-block-group__inner-container .wp-block-group__inner-container { display: block; width: 55%; }
.field .wp-block-group__inner-container .wp-block-group__inner-container h4 { font-size: 3.0rem; font-weight: 500; color: #333; letter-spacing: 0.5rem; margin-bottom: 3rem; padding-left: 3rem; position: relative; }
.field .wp-block-group__inner-container .wp-block-group__inner-container h4::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; }
.field .wp-block-group__inner-container .wp-block-group__inner-container h5 { font-size: 2.4rem; font-weight: 300; color: #333; margin-bottom: 2rem; }
.field .wp-block-group__inner-container .wp-block-group__inner-container p { margin-bottom: 6rem; line-height: 2.4; }
.field .wp-block-group__inner-container .wp-block-group__inner-container p strong { background: linear-gradient(transparent 60%, #98CCA5 60%); }
.field .wp-block-group__inner-container .wp-block-group__inner-container a { border-bottom: solid 1px #999; padding-bottom: 1.4rem; margin-bottom: 3rem; width: 100%; display: block; position: relative; }
.field .wp-block-group__inner-container .wp-block-group__inner-container a:after { content: ''; width: 8px; height: 8px; background: #319a4b; border-radius: 50%; position: absolute; right: 5px; top: 25%; }
.field .wp-block-group__inner-container .wp-block-group__inner-container a:hover { background: url(assets/images/arrow.svg) no-repeat right center; color: #319a4b; }
.field .wp-block-group__inner-container .wp-block-group__inner-container a:hover:after { content: none; }
@media only screen and (max-width: 766px) {
    .field .wp-block-group { width: 90%; margin: 0 auto; }
    .field .wp-block-group__inner-container { flex-wrap: wrap; }
    .field .wp-block-group__inner-container :nth-child(1) { order: 1; }
    .field .wp-block-group__inner-container :nth-child(2) { order: 2; }
    .field .wp-block-group__inner-container :nth-child(3) { order: 3; }
    .field .wp-block-group__inner-container .number { padding: 0 0 0 4rem; width: 100%; }
    .field .wp-block-group__inner-container .number:before { top: 1.5%; }

    .field .wp-block-group__inner-container img { position: relative; width: 100%; margin: 0 auto; transform: translateY(10%); }
    .field .wp-block-group__inner-container .wp-block-group { padding: 2rem; width: 100%; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container { width: 100%; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container h4 { font-size: 2.4rem; margin-top: 3rem; margin-bottom: 3rem; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container h5 { font-size: 2.0rem; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container p { margin-bottom: 3rem; line-height: 1.8; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container .wp-block-columns p { margin-bottom: 1rem; }
    .field .wp-block-group__inner-container .wp-block-group__inner-container .wp-block-columns p a { margin-bottom: 1rem; }

}

/** message **/
.message .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.messageWrap .wp-block-group__inner-container:nth-of-type(1) { width: 80%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; }
.message .messageGroup01 { display: flex; align-items: center; justify-content: flex-start; width: 93.4%;  margin: 0; }
.message .messageGroup01 .wp-block-group__inner-container { display: flex; margin: 0; }
.message .messageGroup01 .number { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; display: inline-block; transform: rotate(90deg);  transform-origin: left top; margin: 0 0 0 -5%; }
.message .messageImage01 img { width: 50%; position: absolute; top: 5%; right: 0; }
.message .messageGroup01 h4 { font-size: 2.5vw; letter-spacing: 0.8rem; font-family: "Marcellus", serif; writing-mode: vertical-rl; margin: 15% 0 10% 20%; }
.message .messageGroup02 { display: block; width: 100%; margin: 0; }
.message .messageGroup02 .wp-block-group__inner-container { margin: 0; width: 100%; }
.message .messageGroup02 .wp-block-group__inner-container p { margin: 2rem 0; }
.message .messageWrap2 .wp-block-group__inner-container { width: 90%; display: block; margin: 4rem auto; padding: 4rem; border: solid 2px #319a4b; }
.message .messageWrap2 .number { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; display: inline-block; transform: rotate(90deg);  transform-origin: left top; margin: 0; }
.message .messageWrap2 h4 { font-size: 2.5vw; letter-spacing: 0.8rem; font-family: "Marcellus", serif; text-align: center;  margin-bottom: 3rem; }
.message .messageWrap2 img { margin: 2rem auto 5rem; display: block; }
.message .messageWrap2 p { line-height: 1.8; width: 80%; margin: 2rem auto; }
@media only screen and (max-width: 766px) {
    .messageWrap .wp-block-group__inner-container:nth-of-type(1) { width: 90%; background: #fff; margin: 0rem auto; padding: 0rem; }
    .message .messageGroup01 { display: block; }
    .message .messageGroup01 .number { color: #319a4b; font-family: "Marcellus", serif; font-size: 1.3rem; font-weight: 500; display: block; transform: rotate(0deg); margin: 1rem 0; }
    .message .messageGroup01 h4 { font-size: 2.5rem; letter-spacing: 0.8rem; font-family: "Marcellus", serif; writing-mode: horizontal-tb; margin: 15% 0; }
    .message .messageImage01 img { width: 100%; position: relative;  }
    .message .messageGroup02 { display: block; width: 100%; margin: 2rem auto; padding-bottom: 2rem; }
    .message .messageWrap2 .wp-block-group__inner-container { width: 90%; display: block; margin: 4rem auto; padding: 2rem; border: solid 2px #319a4b; }
    .message .messageWrap2 .number { color: #319a4b; font-family: "Marcellus", serif; font-size: 1.3rem; font-weight: 500; display: inline-block; transform: rotate(0deg); }
    .message .messageWrap2 h4 { font-size: 2.0rem; }
    .message .messageWrap2 p { width: 100%; }
}

.office .Page h4 { font-size: 2.2rem; position: relative; margin: 6rem 0 3rem; padding-left: 3rem; }
.office .Page h4::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.office .Page h5 { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; letter-spacing: 0.5rem; margin: 0 0 2rem; }
.office .Page .wp-block-columns { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; padding: 5% 0 5% 10%; }
.office .Page .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 60%; height: 100%; top: 0; left: 7%; background: #fff; }
.office .Page .wp-block-columns img { width: 100%; }
.office .Page .wp-block-columns p { padding: 2rem; line-height: 1.8; }
@media only screen and (max-width: 766px) {
    .office .Page .wp-block-columns::after { width: 90%; }
}

.program .Page h3 { font-size: 2.2rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.program .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.program .Page p { margin: 2rem 0 2rem 4rem; line-height: 1.8; }
.program .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.program .wp-block-group__inner-container:nth-of-type(1) { width: 95%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; }
@media only screen and (max-width: 766px) {
    .program .Page p { margin: 2rem 0; line-height: 1.8; }

}

.benefits .Page h3 { font-size: 2.2rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.benefits .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.benefits .Page h4 { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; width: 25%; }
.benefits .Page ul { margin: 2rem 0 2rem 4rem; list-style-type: circle; width: 70%; }
.benefits .Page ul li { font-size: 1.6rem; line-height: 1.8; margin: 1rem 0; }
.benefits .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.benefits .wp-block-group__inner-container:nth-of-type(1) { width: 95%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; display: flex; align-items: center; }
@media only screen and (max-width: 766px) {
    .benefits .Page h4 { width: 100%; }
    .benefits .Page ul { margin: 2rem; width: 100%; }

    .benefits .wp-block-group__inner-container:nth-of-type(1) { display: block;  }

}

.internship .Page h3 { font-size: 2.6rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.internship .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.internship .Page h4 { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.4rem; font-weight: 500; margin: 3rem 0 1rem; letter-spacing: 0.5rem; }
.internship .Page h5 { color: #333; font-size: 1.8rem; font-weight: 500; margin: 2rem 0 1rem 2rem; }
.internship .Page ul { list-style-type: circle; margin: 1rem 0 1rem 5rem; }
.internship .Page ul li { font-size: 1.6rem; line-height: 1.8; margin: 1rem 0; } 
.internship .Page ul + p { margin-left: 3rem; }
.internship .Page table { width: 90%; margin: 2rem auto; border-collapse: collapse; border: none; }
.internship .Page table tr td { border: none; border-bottom: dashed 1px #ccc; padding: 1rem 2rem; font-size: 1.6rem; line-height: 1.8; }
.internship .Page table tr td a { font-size: 1.6rem; border-bottom: solid 1px #0f4c93; color:#0f4c93; }
.internship .Page table tr td:nth-of-type(1) { width: 20%; font-weight: 500; }
.internship .Page .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.internship .Page .wp-block-group__inner-container:nth-of-type(1) { width: 95%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; }
.internship .Page .btn01 a { display: block; background: #d66800; text-align: center; color: #fff; padding: 1.6rem 0; font-weight: 500; border-radius: 30px; }
.internship .Page .btn02 a { display: block; background: #319a4b; text-align: center; color: #fff; padding: 1.6rem 0; font-weight: 500; border-radius: 30px; width: 50%; margin: 1rem auto; }
.internship .Page .btn03 a { display: block; background: #0f4c93; text-align: center; color: #fff; padding: 1.6rem 0; font-weight: 500; border-radius: 30px; width: 50%; margin: 1rem auto; }
.internship .linkArea a { border-bottom: solid 1px #0f4c93; color: #0f4c93; font-size: 1.6rem; }

@media only screen and (max-width: 766px) {
    .internship .Page table { width: 100%; }
    .internship .Page table tr td { display: block; width: 100%; border: none; padding: 1rem 0; }
    .internship .Page table tr td:nth-of-type(1) { width: 100%; border-bottom: dashed 1px #ccc; padding-top: 3rem; }
    .internship .Page .btn02 a { width: 100%; }
    .internship .Page .btn03 a { width: 100%; }
    .internship .Page h5 { color: #333; font-size: 1.8rem; font-weight: 500; margin: 2rem 0 1rem 0; }
    .internship .Page ul { margin: 1rem 0 1rem 0; }
    .internship .Page ul li { margin: 1rem 0; } 
    .internship .Page ul + p { margin-left: 0; }
    .internship .Page .wp-block-group__inner-container:nth-of-type(1) { margin: 4rem 0 4rem 3%; }
}
/*新卒採用*/
.page-id-117 .syoguu th { background: #eee; vertical-align: middle; }
.page-id-117 .smoothArea { scroll-behavior: smooth; }
.page-id-117 .btn a { font-size: 1.6rem; }
@media only screen and (max-width: 766px) {
        .page-id-117 .whiteBgArea { padding: 2rem; }
        .page-id-117 .contHeadline4 { margin: 0 2rem;}
        .page-id-117 .table01 tr { margin-bottom: 3rem; display: block; }
        .page-id-117 .table01 thead { display: none;}
        .page-id-117 .table01 td { padding: 1rem;}
        .page-id-117 .table01 span { display: inline-block!important; font-weight: bold; }
        .page-id-117 .syoguu tr { display: grid; }
}



/*経験者採用*/
.experienced_hire .Page .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.experienced_hire .Page .wp-block-group__inner-container:nth-of-type(1) { width: 95%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; }
.experienced_hire .Page h3 { font-size: 2.6rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.experienced_hire .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.experienced_hire .Page h4 { color: #333; font-family: "Marcellus", serif; font-size: 1.6rem; font-weight: 400; margin: 3rem 0 0 3rem; padding: 1.4rem 2rem 1.4rem 4rem; cursor: pointer; position: relative; border-bottom: solid 1px #319a4b; }
.experienced_hire .Page h4::before { content: "▶"; position: absolute; left: 1%; top: 35%; font-size: 1.2rem; }
.experienced_hire .Page h4.open::before { content: "▼"; }
.experienced_hire .Page h4.open { color: #286e50; }
.experienced_hire .Page h4 strong { font-weight: 500; font-size: 2.0rem; padding-right: 10rem; }
.experienced_hire .Page h4:hover { color:#319a4b ;}
.experienced_hire .Page h4 + figure { width: 95%; margin: 1rem 0 5rem 5%; }
.experienced_hire .Page h4 + figure > table {  display: none; }
.experienced_hire .Page h4 + figure > table td { border: none; font-size: 1.6rem; padding: 1.4rem 2rem; line-height: 1.8; }
.experienced_hire .Page h4 + figure > table tr td:nth-of-type(1) { width: 20%; border-bottom: solid 1px #666; text-align: right; }
.experienced_hire .Page h4 + figure > table tr td:nth-of-type(2) { border-bottom: solid 1px #ccc; }
.experienced_hire .Page h3 + p { padding-left: 3rem; font-size: 1.6rem; line-height: 1.8; }
.experienced_hire .Page h3 + figure { padding-left: 3rem; }
.experienced_hire .Page h3 + figure > table td { font-size: 1.6rem; line-height: 1.8; }
.experienced_hire .Page h3 + figure > table th { background: #f5f5f5; }
.experienced_hire .syoguu th { background: #eee; vertical-align: middle; }
.experienced_hire .has-fixed-layout { width: auto!important;}
@media only screen and (max-width: 766px) {
    .experienced_hire .Page h4 { font-size: 1.4rem; margin: 3rem 0 0 0; padding: 1rem 1rem 1rem 2.5rem; }
    .experienced_hire .Page h4 strong { font-size: 1.6rem; padding-right: 0; display: block; }
    .experienced_hire .Page h4 + figure { width: 100%; margin: 0 0 3rem 0; }
    .experienced_hire .Page h4::before { font-size: 1.0rem; top: 17%; }
    .experienced_hire .Page h4 + figure > table {  background: #fff; }
    .experienced_hire .Page h4 + figure > table td { display: block; width: 100%; font-size: 1.4rem; padding: 1rem; line-height: 1.6; }
    .experienced_hire .Page h4 + figure > table tr td:nth-of-type(1) { width: 100%; border-bottom: dashed 1px #ccc; text-align: left; }
    .experienced_hire .Page h4 + figure > table tr td:nth-of-type(2) { border-bottom: none; padding-bottom: 3rem; }
    .experienced_hire .Page h3 { font-size: 2.0rem; }
    .experienced_hire .syoguu tr { display: grid; }
}


.faq .Page h3 { font-size: 2.2rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.faq .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.faq .Page h4 { font-family: "Marcellus", serif; color: #319a4b; font-size: 2.0rem; font-weight: 500; margin-bottom: 2rem; }
.faq .Page p { font-size: 1.6rem; line-height: 1.8; max-width: 1000px; width: 100%; }
.faq .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.faq .wp-block-group__inner-container:nth-of-type(1) { width: 90%; background: #fff; margin: 4rem 0 4rem 10%; padding: 4rem; }
@media only screen and (max-width: 766px) {
.faq .projectTopLead { width: 90% !important; }
}


.construction_consultant .Page h3 { font-size: 2.2rem; position: relative; margin: 3rem 0 3rem; padding-left: 3rem; }
.construction_consultant .Page h3::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.construction_consultant .Page h4 { font-family: "Marcellus", serif; color: #319a4b; font-size: 2.0rem; font-weight: 500; margin: 4rem auto 2rem; }
.construction_consultant .Page p { font-size: 1.6rem; line-height: 1.8; /*max-width: 1000px;*/ width: 100%; }
.construction_consultant .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.construction_consultant .wp-block-group__inner-container:nth-of-type(1) { width: 85%; background: #fff; margin: 4rem 0 4rem 8%; padding: 4rem 6rem; }

.construction_consultant .Page .fig001 { width: 960px; margin: 2rem 0 2rem 2rem; }
.construction_consultant .Page .fig001 div { width: 100%; display: flex; justify-content: space-between; align-items: stretch; margin: 0 auto;}
.construction_consultant .Page .fig001 div p { position: relative; display: flex; align-items: center; flex-wrap: wrap; color: #fff; text-align: center; background: #6CA5C4;}
.construction_consultant .Page .fig001 div p:before { content: ""; position: absolute; left: 140%; top: 45%; box-sizing: border-box; width: 10px; height: 10px; border: 10px solid transparent; border-left: 10px solid #6CA5C4; }
.construction_consultant .Page .fig001 div p:nth-last-child(1):before { content: none; }
.construction_consultant .Page .fig001 div p span { display: block; width: 100%; padding: 10px 0; }
.construction_consultant .Page .fig001 div:nth-of-type(1) { border-bottom: dashed 1px #555; padding-bottom: 10px; margin-bottom: 10px; }
.construction_consultant .Page .fig001 div:nth-of-type(1) p { width: calc((100%/13) *1); text-align: center;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(1) { background: #81B9BD;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(1) span span { transform: rotate(90deg); padding: 0; width: 50%; margin: 0 auto; line-height: 1.5;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) { background: #fff;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) span:nth-child(1) { background: #577D91; margin-bottom: 5px;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) span:nth-child(2) { background: #6CA5C4;}
.construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(6) { background: #17375E;}
.construction_consultant .Page .fig001 div:nth-of-type(2) { margin-bottom: 50px; }
.construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(1) { width: calc((100%/13) * 1); background: #81B9BD; }
.construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2) { width: calc((100%/13) * 11); background: #fff; }
.construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2)  span:nth-child(1) { background: #6CA5C4; margin-bottom: 5px;}
.construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2)  span:nth-child(2) { background: #577D91; width: calc((100%/11) * 3); margin-left: calc((100%/11) * 6)}
@media only screen and (max-width: 766px) {
    .construction_consultant .wp-block-group__inner-container:nth-of-type(1) { width: 90%; background: #fff; margin: 0 auto; padding: 2rem; }
    .construction_consultant .Page h3 { font-size: 1.8rem; }
    .construction_consultant .Page p { font-size: 1.6rem; line-height: 1.8; /*max-width: 1000px;*/ width: 100%; }


    .construction_consultant .Page .fig001 { width: 100%; display: block; justify-content: space-between; align-items: stretch; margin: 0 auto; }
    .construction_consultant .Page .fig001 p { position: relative; display: flex; align-items: center; flex-wrap: wrap; color: #fff; text-align: center; background: #6CA5C4; font-size: 11px;}
    .construction_consultant .Page .fig001 p:before { content: ""; position: absolute; left: 140%; box-sizing: border-box; width: 10px; height: 10px; border: 10px solid transparent; border-left: 10px solid #6CA5C4; }
    .construction_consultant .Page .fig001 p:nth-last-child(1):before { content: none; }
    .construction_consultant .Page .fig001 p span { display: block; width: 100%; padding: 10px 0; }
    .construction_consultant .Page .fig001 div:nth-of-type(1) { border-bottom: dashed #555; padding-bottom: 10px; margin-bottom: 10px; }
    .construction_consultant .Page .fig001 div:nth-of-type(1) p { width: calc((100%/13) *1); text-align: center;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(1) { background: #81B9BD;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(1) span span { transform: rotate(90deg); padding: 0; width: 50%; margin: 0 auto; line-height: 1.5;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) { background: #fff;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) span:nth-child(1) { background: #577D91; margin-bottom: 5px;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(5) span:nth-child(2) { background: #6CA5C4;}
    .construction_consultant .Page .fig001 div:nth-of-type(1) p:nth-child(6) { background: #17375E;}
    .construction_consultant .Page .fig001 div:nth-of-type(2) { margin-bottom: 50px; }
    .construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(1) { width: calc((100%/13) * 1); background: #81B9BD; }
    .construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2) { width: calc((100%/13) * 11); background: #fff; }
    .construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2)  span:nth-child(1) { background: #6CA5C4; margin-bottom: 5px;}
    .construction_consultant .Page .fig001 div:nth-of-type(2) p:nth-child(2)  span:nth-child(2) { background: #577D91; width: calc((100%/11) * 3); margin-left: calc((100%/11) * 6)}
}

/*キャリアデザインインタビュー*/
.parent-pageid-163 .Page .wp-block-group { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; }
.parent-pageid-163 .Page .wp-block-group__inner-container { width: 95%; background: #fff; margin: 4rem 0 4rem 5%; padding: 4rem; }
.parent-pageid-163 .Page .visualArea img { position: absolute; right: 0; top: 4rem; z-index: 0; width: 60%; }
.parent-pageid-163 .Page h3 { font-size: 2.2rem; font-weight: 600; color: #333; margin-bottom: 3rem; padding-left: 5rem; }
.parent-pageid-163 .Page h3 strong { font-family: "Marcellus", serif; font-size: 3.0rem; }
.parent-pageid-163 .Page h4 { font-family: "dnp-shuei-mincho-pr6n"; font-size: 3.5rem; font-weight: 500; color: #333; margin: 20rem auto 4rem; z-index: 1; background: #fff; position: relative; display: inline-block; }
.parent-pageid-163 .Page h5 { font-size: 2.2rem; position: relative; margin: 6rem 0 3rem; padding-left: 3rem; }
.parent-pageid-163 .Page h5::before { position: absolute; content: ''; width: 20px; height: 2px; background: #319a4b; left: 0; top: 50%; } 
.parent-pageid-163 .Page p { margin: 2rem; line-height: 1.8; max-width: 1000px; }
.parent-pageid-163 .Page table { max-width: 1000px; margin: 2rem; border: none; }
.parent-pageid-163 .Page table th { padding: 1rem; font-size: 1.6rem; font-weight: 500; border: none; border-bottom: solid 2px #0d4990; vertical-align: middle; width: 20%; }
.parent-pageid-163 .Page table td { padding: 1rem; font-size: 1.6rem; font-weight: 500; border: none; border-bottom: dashed 1px #cccc; }
.parent-pageid-163 .Page .careerPhoto { max-width: 1000px; margin: 4rem 2rem; }
.parent-pageid-163 .Page .careerPhoto img { width: 100%; }
.parent-pageid-163 .Page .btn a { display: block; background: #333; text-align: center; color: #fff; padding: 1.6rem 0; font-weight: 500; border-radius: 30px; width: 50%; margin: 1rem auto; }
@media only screen and (max-width: 766px) {
    .parent-pageid-163 .Page .wp-block-group__inner-container { width: 95%; background: #fff; margin: 2rem 0 2rem 5%; padding: 2rem; }
    .parent-pageid-163 .Page .visualArea img { position: absolute; right: 0; top: 0; z-index: 0; width: 95%; }
    .parent-pageid-163 .Page h4 { font-size: 2.5rem; }
    .parent-pageid-163 .Page h3 { font-size: 2.2rem; padding-left: 0; }
    .parent-pageid-163 .Page table th { font-size: 1.4rem; }
    .parent-pageid-163 .Page table td { font-size: 1.4rem; }
    .parent-pageid-163 .Page .btn a {  width: 90%; }

}

/*キャリアステップ*/
.career_path .Page .wp-block-columns { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; padding: 5% 0 5% 10%; }
.career_path .Page .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 60%; height: 80%; top: 20%; left: 7%; background: #fff; }
.career_path .Page .wp-block-columns img { width: 100%; }
.career_path .Page .wp-block-columns p { width: 100%; padding: 2rem; line-height: 1.8; margin-top: 5rem; text-align: center; }
.career_path .Page .wp-block-columns p strong:nth-of-type(1) { font-size: 1.8rem; margin-bottom: 0.7rem; }
.career_path .Page .wp-block-columns p strong:nth-of-type(2) { font-size: 1.8vw; margin-bottom: 0.7rem; font-family: "dnp-shuei-mincho-pr6n"; }
.career_path .Page .wp-block-column:nth-of-type(1) { display: flex; align-items: center; }
@media only screen and (max-width: 766px) {
    .career_path .Page .wp-block-columns { flex-direction: column-reverse; }
    .career_path .Page .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 90%; height: 90%; top: 10%; left: 5%; background: #fff; }
    .career_path .Page .wp-block-columns p { width: 90%; margin: 0; }
    .career_path .Page .wp-block-column:nth-of-type(1) { display: flex; align-items: flex-start; }
    .career_path .Page .wp-block-columns p strong:nth-of-type(2) { font-size: 6vw; }
}


/*各扉ページ*/
.tobira .wp-block-columns { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; padding: 5% 0 5% 10%; }
.tobira .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 60%; height: 80%; top: 20%; left: 7%; background: #fff; }
.tobira .wp-block-columns img { width: 100%; }
.tobira .wp-block-columns p { width: 100%; padding: 2rem; line-height: 1.8; margin-top: 5rem; text-align: center; }
.tobira .wp-block-columns p strong:nth-of-type(1) { font-family: "Marcellus", serif; font-size: 2.2rem; font-weight: 400; color: #319a4b; margin-bottom: 0.7rem; }
.tobira .wp-block-columns p strong:nth-of-type(2) { font-size: 1.8vw; margin-bottom: 0.7rem; font-family: "dnp-shuei-mincho-pr6n"; }
.tobira .wp-block-column:nth-of-type(1) { display: flex; align-items: center; }
@media only screen and (max-width: 766px) {
    .tobira .wp-block-columns { flex-direction: column-reverse; }
    .tobira .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 90%; height: 90%; top: 10%; left: 5%; background: #fff; }
    .tobira .wp-block-columns p { width: 90%; margin: 0 auto; }
    .tobira .wp-block-column:nth-of-type(1) { display: flex; align-items: flex-start; }
}

/*交通アクセス*/
.access .Page h4 { color: #319a4b; font-family: "Marcellus", serif; font-size: 2.0rem; font-weight: 500; }
.access .Page .main-officeArea .wp-block-columns { width: 99vw; margin-left: calc(-50vw + 50%); position: relative; padding: 5% 0 5% 10%; }
.access .Page .main-officeArea .wp-block-columns::after { content: ''; position: absolute; z-index: -99; width: 60%; height: 100%; top: 0; left: 7%; background: #fff; }
.access .Page .main-officeArea .wp-block-columns img { width: 100%; }
.access .Page .main-officeArea .wp-block-columns p { padding: 2rem; line-height: 1.8; }
.access .Page ul { margin: 2rem 0 2rem 4rem; list-style-type: circle; width: 70%; }
.access .Page ul li { font-size: 1.6rem; line-height: 1.8; margin: 1rem 0; }
.access .long { background: #fff; margin: 4rem 0 0 0; padding: 4rem; display: flex; align-items: center; }
.access .long .wp-block-group__inner-container { width: 100%; }
.access .long .wp-block-columns { width: 100%; }
.access .longcont { width: 95%; display: flex; align-items: center; margin: 0!important; padding: 0!important; }
.access .centerAlignment { display: flex; justify-content:flex-start; align-items: center; }
.access .Page .route { color: #319a4b;}
.access .branchArea { margin: 4rem 0 0 0; }
.access .shiten { gap: 0; margin-bottom: 2%; }
.access .adressArea { padding: 2%; background: #fff; flex-basis: 80%!important; }
.access .branchArea .shitenNameArea { background:#319a4b; flex-basis: 20%!important; display: flex; justify-content: center; align-items: center; font-weight: bold; } 
.access .branchArea .shitenNameArea p { font-size: 1.8rem; color: #fff; } 
.access .branchArea p a { color:#319a4b; text-decoration: underline; } 
.access p span{ font-size: 1.4rem; }

@media only screen and (max-width: 766px) {
    .access .Page .wp-block-columns::after { width: 90%; }
    .access .Page .main-officeArea .wp-block-columns::after{ width: 90%; }
    .access .Page h4 { width: 100%; }
    .access .Page ul { margin: 2rem; width: 100%; }
    .access .wp-block-group__inner-container:nth-of-type(1) { display: block;  }
    .access .Page .wp-block-columns { width: 100%; }
    .access .long { width: 100%; margin: 4rem 0 0 0; padding: 2rem; }
    .access .Page .wp-block-columns p { padding: 1rem; }
    .access .Page h4 span { font-size: 1.4rem!important; }
    .access .longcont.wp-block-columns { gap: 0 !important; row-gap: 0 !important;      margin-bottom: 0 !important; }
}


/*プロジェクト紹介*/

@media only screen and (max-width: 766px) {
    .projectTopLead{ margin:0 2rem; }

}



/*扉ページの右側画像重なり解消*/
@media only screen and (min-width: 1921px) {
    .field .Page .wp-block-spacer { height: 15vw!important; }
}
