@charset "UTF-8";
/* CSS Document */
/*parts
=========================================== */
#reason-sec { padding: 102px 0 77.5px; }
#reason-sec .title01 { margin-bottom: 20px; padding-top: 82px; padding-left: 27px; }
#reason-sec .title01 .eng { left: -20px; }
#reason-sec .reason_list { justify-content: space-between; align-items: flex-end; }
#reason-sec .reason_list .reason00 { display: flex; flex-direction: column; align-items: center; width: 366.5px; padding: 0 21px; box-sizing: border-box; position: relative; }
#reason-sec .reason_list .reason00::after { content: ""; display: block; width: 1px; height: 239px; background: #D6D6D6; position: absolute; bottom: 9px; right: 0; }
#reason-sec .reason_list .reason00:last-child::after { display: none; }
#reason-sec .reason_list .reason00 h3 { margin-top: -23px; font-size: 26px; letter-spacing: 0.02em; line-height: 35px; text-align: center; }
#reason-sec .reason_list .reason01 .img { width: 302px; height: 281px; }
#reason-sec .reason_list .reason01 h3 { margin-top: -29px; }
#reason-sec .reason_list .reason02 .img { width: 322px; height: 276px; }
#reason-sec .reason_list .reason03 .img { width: 278px; height: 275px; }

#contact-sec { padding: 77.5px 0 100px; }
#contact-sec .contact-box { padding: 46px 80px 66px; box-sizing: border-box; background: url("../img/common/contact-bg.jpg") no-repeat center; background-size: cover; border-radius: 23px; }
#contact-sec .contact-box .title { font-size: 29px; line-height: 42px; letter-spacing: 0.017em; margin-bottom: 12px; }
#contact-sec .contact-box .cnt .box { width: 470px; height: 134px; border: 1px solid #FFFFFF; box-sizing: border-box; justify-content: center; align-items: center; flex-wrap: nowrap; }
#contact-sec .contact-box .cnt .box.left { padding: 0 40px 0 44px; }
#contact-sec .contact-box .cnt .box.left img { width: 59px; height: 59px; }
#contact-sec .contact-box .cnt .box.left .tel_box { justify-content: flex-start; margin-left: 55.5px; }
#contact-sec .contact-box .cnt .box.left .tel_box .tel { font-size: 22px; line-height: 32px; }
#contact-sec .contact-box .cnt .box.left .tel_box .tel a { color: #fff; }
#contact-sec .contact-box .cnt .box.left .tel_box .tel .num { font-size: 29px; margin-left: 2px; }
#contact-sec .contact-box .cnt .box.left .tel_box .text { color: #fff; font-weight: 500; margin-left: 0; line-height: 24px; }
#contact-sec .contact-box .cnt .box.right a { color: #fff; padding: 0 57px 0 44px; width: 100%; height: 100%; background: url(../img/common/arrow.png) no-repeat center right 40px; background-size: 41px; box-sizing: border-box; align-items: center; }
#contact-sec .contact-box .cnt .box.right a:hover { background-position: center right 25px; text-decoration: none; }
#contact-sec .contact-box .cnt .box.right a img { width: 65px; height: 47px; margin-right: 22px; }
#contact-sec .contact-box .cnt .box.right a span { font-size: 20px; line-height: 41px; }

#nav-sec { padding: 113px 0 110px; background: url("../img/common/bg_img.jpg") center; background-size: cover; }
#nav-sec .btn_list { justify-content: center; }
#nav-sec .btn_list .btn01 { margin-right: 14.5px; }
#nav-sec .btn_list .btn01:last-child { margin-right: 0; }

.wp-pagenavi > span, .wp-pagenavi > a { display: inline-block; width: 30px; height: 30px; margin: 0 3px; text-decoration: none; text-align: center; font-size: 15px; font-weight: 700; color: #000000; background: transparent; line-height: 30px; font-family: "Montserrat"; }

.wp-pagenavi { text-align: center; margin-top: 80px; background: #F4F4F4; padding: 35px 0; box-sizing: border-box; position: relative; }
.wp-pagenavi a:hover, .wp-pagenavi span.current { color: #EC8A2C; }
.wp-pagenavi a.page { position: relative; }
.wp-pagenavi span.extend { background: none; color: #000000; border: none; }
.wp-pagenavi span.pages { display: none; }
.wp-pagenavi a.first, .wp-pagenavi a.last { display: none; }
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink { position: relative; }
.wp-pagenavi a.previouspostslink::before, .wp-pagenavi a.nextpostslink::before { content: ""; width: 100%; height: 100%; display: block; background: url("../img/p06/arrow.svg") no-repeat center; position: absolute; top: 0; left: 0; }
.wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover { opacity: 0.7; }
.wp-pagenavi a.previouspostslink::before { transform: scale(-1, 1); }

.post-navigation ul { margin-top: 80px; background: #F4F4F4; padding: 30px 0; box-sizing: border-box; justify-content: center; align-items: center; }

.post-navigation ul > li a { text-align: center; height: 40px; }
.post-navigation ul > li a span { font-weight: 700; line-height: 40px; font-size: 14px; transition: 0.3s; }
.post-navigation ul > li a:focus, .post-navigation ul > li a:hover { text-decoration: none; opacity: 0.7; }

.post-navigation ul > li.blog-back { margin: 0 30px; }
.post-navigation ul > li.blog-back a { padding: 10px 25px; box-sizing: border-box; background: #EC8A2C; border-radius: 50px; color: #fff; }
.post-navigation ul > li.blog-back a span { font-weight: 600; }

.post-navigation ul > li.kara { opacity: 0; pointer-events: none; }

/*TOPページ　p01
=========================================== */
.home #reason-sec { padding: 26px 0 91px; }

#topbox01 { padding-bottom: 90px; position: relative; }
#topbox01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -45px; left: 50%; transform: translateX(-50%); background-size: cover; z-index: 1; }
#topbox01 .cnt { justify-content: space-between; align-items: flex-end; margin-bottom: 22.4px; }
#topbox01 .cnt .text { width: 546px; order: 1; }
#topbox01 .cnt .text .title01 { margin-bottom: 15.6px; }
#topbox01 .cnt .img { width: 500px; }
#topbox01 .box { background: #ECF5F8; padding: 20px 20px 20px 58.6px; align-items: center; box-sizing: border-box; }
#topbox01 .box .text { width: 589px; margin-right: 25px; }
#topbox01 .box .text h3 { font-size: 29px; letter-spacing: 0.017em; line-height: 42px; margin-bottom: 8.6px; }
#topbox01 .box .img { width: 407px; height: 198px; position: relative; }
#topbox01 .box .img img { width: 100%; position: absolute; bottom: -13px; right: 0; }

#topbox02 { padding: 19.4px 0 106px; position: relative; background: #5583BE; }
#topbox02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -45px; left: 50%; transform: translateX(-50%); background-size: cover; }
#topbox02 .title01 { margin-bottom: 17px; padding-top: 80.6px; padding-left: 27px; }
#topbox02 .title01 .eng { color: #4571B3; opacity: 1; left: -20px; }
#topbox02 .title01 .title { font-size: 29px; letter-spacing: 0.017em; color: #fff; }
#topbox02 .service_list .service00 { width: 350px; height: 392px; margin-right: 25px; }
#topbox02 .service_list .service00:last-child { margin-right: 0; }
#topbox02 .service_list .service00 a { display: flex; width: 100%; height: 100%; border-radius: 22px; padding: 30px; box-sizing: border-box; align-items: flex-end; position: relative; z-index: 1; overflow: hidden; }
#topbox02 .service_list .service00 a:hover { text-decoration: none; }
#topbox02 .service_list .service00 a:hover .bg-img { transform: scale(1.1); }
#topbox02 .service_list .service00 a .bg-img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; transition: 0.3s; z-index: -1; }
#topbox02 .service_list .service00 a .text { width: 100%; }
#topbox02 .service_list .service00 a .text h3 { font-size: 35px; letter-spacing: 0.02em; line-height: 40px; margin-bottom: 7px; }
#topbox02 .service_list .service00 a .text .cnt { justify-content: space-between; align-items: flex-end; }
#topbox02 .service_list .service00 a .text .cnt .text_list { width: 243px; }
#topbox02 .service_list .service00 a .text .cnt .text_list li { line-height: 30px; }
#topbox02 .service_list .service00 a .text .cnt .arrow { width: 41px; }
#topbox02 .service_list .service01 a .bg-img { background: url("../img/top/service01.png") no-repeat center; background-size: cover; }
#topbox02 .service_list .service02 a .bg-img { background: url("../img/top/service02.png") no-repeat center; background-size: cover; }
#topbox02 .service_list .service03 a .bg-img { background: url("../img/top/service03.png") no-repeat center; background-size: cover; }

#topbox03 { padding-bottom: 93px; }
#topbox03 .cnt { background: #5583BE; height: 386px; padding-left: 57px; justify-content: space-between; box-sizing: border-box; }
#topbox03 .cnt .left { width: 450px; height: 100%; padding-top: 13px; box-sizing: border-box; }
#topbox03 .cnt .left .title01 { margin-bottom: 37px; padding-top: 82px; padding-left: 25px; }
#topbox03 .cnt .left .title01 .eng { color: #4571B3; opacity: 1; left: -22px; }
#topbox03 .cnt .left .title01 .title { font-size: 29px; letter-spacing: 0.017em; color: #fff; }
#topbox03 .cnt .left .point { font-size: 30px; line-height: 44px; margin-bottom: 8px; }
#topbox03 .cnt .right { width: 515px; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: url("../img/top/recruit01.jpg") no-repeat center; background-size: cover; }
#topbox03 .cnt .right .btn_shiro { margin-top: 23px; }

/*ネットワーク工事　p02
=========================================== */
#p02box01 { padding: 56px 0 52.5px; position: relative; }
#p02box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -75px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p02box01 .title { font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 17px; position: relative; }
#p02box01 .title::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; bottom: -61px; left: 67px; }
#p02box01 .title::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -128.5px; right: -4px; }
#p02box01 .nayami-list { width: 781px; margin: 0 auto; position: relative; }
#p02box01 .nayami-list::before { content: ""; display: block; width: 142px; height: 220px; background: url("../img/p02/bg-img03.png") no-repeat center; background-size: cover; position: absolute; bottom: -32px; left: -152px; }
#p02box01 .nayami-list::after { content: ""; display: block; width: 157px; height: 180px; background: url("../img/p02/bg-img04.png") no-repeat center; background-size: cover; position: absolute; bottom: -4.5px; right: -159px; }
#p02box01 .nayami-list li { display: flex; align-items: center; width: 100%; background: linear-gradient(90deg, #416fc6 0%, #87acf2 100%); border-radius: 36px; margin-bottom: 8px; padding: 20px 51px; box-sizing: border-box; line-height: 29px; font-size: 20px; font-weight: 500; }
#p02box01 .nayami-list li:last-child { margin-bottom: 0; }
#p02box01 .nayami-list li span { padding-left: 37px; background: url("../img/p02/list-icon01.svg") no-repeat top 2px left; }
#p02box01 .nayami-list li.line2 { border-radius: 52px; }

#p02box02 { padding: 52.5px 0 120px; position: relative; }
#p02box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -54.8px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p02box02 .box { width: 957px; margin: 0 auto; }
#p02box02 .box .title01 { margin-bottom: 15px; }
#p02box02 .box .btn01 { margin: 37px auto 0; }
#p02box02 .box p { margin-bottom: 27px; }
#p02box02 .box p:last-child { margin-bottom: 0; }
#p02box02 .img { width: 100%; height: 384px; margin-top: 9px; }

#p02box03 { padding: 109px 0 150px; position: relative; background: rgba(65, 111, 198, 0.12); }
#p02box03::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p02box03 .naiyou_list .title01 { padding-top: 0; margin-bottom: -41px; z-index: -1; }
#p02box03 .naiyou_list .title01 .eng { position: relative; }
#p02box03 .naiyou_list .naiyou01 { width: 1000px; margin: 0 auto 43px; background: #fff; padding: 66px 69px 72.8px 51px; box-sizing: border-box; border-radius: 23px; }
#p02box03 .naiyou_list .naiyou01:last-child { margin-bottom: 0; }
#p02box03 .naiyou_list .naiyou01 .title { font-size: 38px; letter-spacing: 0.02em; line-height: 73px; padding-left: 81px; margin-bottom: 26px; }
#p02box03 .naiyou_list .naiyou01 .title.naiyou-title01 { background: url("../img/p02/title01.svg") no-repeat center left; background-size: contain; }
#p02box03 .naiyou_list .naiyou01 .title.naiyou-title02 { background: url("../img/p02/title02.svg") no-repeat center left; background-size: contain; }
#p02box03 .naiyou_list .naiyou01 .list li { margin-bottom: 35px; padding-left: 36px; box-sizing: border-box; }
#p02box03 .naiyou_list .naiyou01 .list li:last-child { margin-bottom: 0; }
#p02box03 .naiyou_list .naiyou01 .list li .list-title { font-size: 28px; line-height: 40px; margin-bottom: 6.2px; position: relative; }
#p02box03 .naiyou_list .naiyou01 .list li .list-title::before { content: ""; display: block; width: 5px; height: 5px; background: #1A4687; position: absolute; top: 50%; left: -15px; transform: translateY(-50%); border-radius: 50%; }
#p02box03 .naiyou_list .naiyou01 .list li .list-title::after { content: ""; display: block; width: 74px; height: 1px; background: #1A4687; position: absolute; top: 50%; left: -86.5px; transform: translateY(-50%); }

/*電話工事・ビジネスフォン　p03
=========================================== */
#p03box01 { padding: 56px 0 52.5px; position: relative; }
#p03box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -75px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p03box01 .title { font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 17px; position: relative; }
#p03box01 .title::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; bottom: -61px; left: 67px; }
#p03box01 .title::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -128.5px; right: -4px; }
#p03box01 .nayami-list { width: 781px; margin: 0 auto; position: relative; }
#p03box01 .nayami-list::before { content: ""; display: block; width: 142px; height: 220px; background: url("../img/p02/bg-img03.png") no-repeat center; background-size: cover; position: absolute; bottom: -32px; left: -152px; }
#p03box01 .nayami-list::after { content: ""; display: block; width: 157px; height: 180px; background: url("../img/p02/bg-img04.png") no-repeat center; background-size: cover; position: absolute; bottom: -4.5px; right: -159px; }
#p03box01 .nayami-list li { display: flex; align-items: center; width: 100%; background: linear-gradient(90deg, #416fc6 0%, #87acf2 100%); border-radius: 36px; margin-bottom: 8px; padding: 20px 51px; box-sizing: border-box; line-height: 29px; font-size: 20px; font-weight: 500; }
#p03box01 .nayami-list li:last-child { margin-bottom: 0; }
#p03box01 .nayami-list li span { padding-left: 37px; background: url("../img/p02/list-icon01.svg") no-repeat top 2px left; }
#p03box01 .nayami-list li.line2 { border-radius: 52px; }

#p03box02 { padding: 52.5px 0 120px; position: relative; }
#p03box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -54.8px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p03box02 .box { width: 957px; margin: 0 auto; }
#p03box02 .box .title01 { margin-bottom: 15px; }
#p03box02 .box .btn01 { margin: 37px auto 0; }
#p03box02 .box p { margin-bottom: 27px; }
#p03box02 .box p:last-child { margin-bottom: 0; }
#p03box02 .img { width: 100%; height: 384px; margin-top: 9px; }

#p03box03 { padding: 109px 0 150px; position: relative; background: rgba(65, 111, 198, 0.12); }
#p03box03::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p03box03 .naiyou_list .title01 { padding-top: 0; margin-bottom: -41px; z-index: -1; }
#p03box03 .naiyou_list .title01 .eng { position: relative; }
#p03box03 .naiyou_list .naiyou01 { width: 1000px; margin: 0 auto 43px; background: #fff; padding: 66px 69px 72.8px 51px; box-sizing: border-box; border-radius: 23px; }
#p03box03 .naiyou_list .naiyou01:last-child { margin-bottom: 0; }
#p03box03 .naiyou_list .naiyou01 .title { font-size: 38px; letter-spacing: 0.02em; line-height: 73px; padding-left: 81px; margin-bottom: 26px; }
#p03box03 .naiyou_list .naiyou01 .title.naiyou-title01 { background: url("../img/p03/title01.svg") no-repeat center left; background-size: contain; }
#p03box03 .naiyou_list .naiyou01 .title.naiyou-title02 { background: url("../img/p03/title02.svg") no-repeat center left; background-size: contain; }
#p03box03 .naiyou_list .naiyou01 .list li { margin-bottom: 35px; padding-left: 36px; box-sizing: border-box; }
#p03box03 .naiyou_list .naiyou01 .list li:last-child { margin-bottom: 0; }
#p03box03 .naiyou_list .naiyou01 .list li .list-title { font-size: 28px; line-height: 40px; margin-bottom: 6.2px; position: relative; }
#p03box03 .naiyou_list .naiyou01 .list li .list-title::before { content: ""; display: block; width: 5px; height: 5px; background: #1A4687; position: absolute; top: 50%; left: -15px; transform: translateY(-50%); border-radius: 50%; }
#p03box03 .naiyou_list .naiyou01 .list li .list-title::after { content: ""; display: block; width: 74px; height: 1px; background: #1A4687; position: absolute; top: 50%; left: -86.5px; transform: translateY(-50%); }

/*電気工事　p04
=========================================== */
#p04box01 { padding: 56px 0 52.5px; position: relative; }
#p04box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -75px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p04box01 .title { font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 17px; position: relative; }
#p04box01 .title::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; bottom: -61px; left: 67px; }
#p04box01 .title::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -128.5px; right: -4px; }
#p04box01 .nayami-list { width: 781px; margin: 0 auto; position: relative; }
#p04box01 .nayami-list::before { content: ""; display: block; width: 142px; height: 220px; background: url("../img/p02/bg-img03.png") no-repeat center; background-size: cover; position: absolute; bottom: -32px; left: -152px; }
#p04box01 .nayami-list::after { content: ""; display: block; width: 157px; height: 180px; background: url("../img/p02/bg-img04.png") no-repeat center; background-size: cover; position: absolute; bottom: -4.5px; right: -159px; }
#p04box01 .nayami-list li { display: flex; align-items: center; width: 100%; background: linear-gradient(90deg, #416fc6 0%, #87acf2 100%); border-radius: 36px; margin-bottom: 8px; padding: 20px 51px; box-sizing: border-box; line-height: 29px; font-size: 20px; font-weight: 500; }
#p04box01 .nayami-list li:last-child { margin-bottom: 0; }
#p04box01 .nayami-list li span { padding-left: 37px; background: url("../img/p02/list-icon01.svg") no-repeat top 2px left; }
#p04box01 .nayami-list li.line2 { border-radius: 52px; }

#p04box02 { padding: 52.5px 0 120px; position: relative; }
#p04box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -54.8px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p04box02 .box { width: 957px; margin: 0 auto; }
#p04box02 .box .title01 { margin-bottom: 15px; }
#p04box02 .box .btn01 { margin: 37px auto 0; }
#p04box02 .box p { margin-bottom: 27px; }
#p04box02 .box p:last-child { margin-bottom: 0; }
#p04box02 .img { width: 100%; height: 384px; margin-top: 9px; }

#p04box03 { padding: 109px 0 150px; position: relative; background: rgba(65, 111, 198, 0.12); }
#p04box03::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p04box03 .naiyou_list .title01 { padding-top: 0; margin-bottom: -41px; z-index: -1; }
#p04box03 .naiyou_list .title01 .eng { position: relative; }
#p04box03 .naiyou_list .naiyou01 { width: 1000px; margin: 0 auto 43px; background: #fff; padding: 66px 69px 72.8px 51px; box-sizing: border-box; border-radius: 23px; }
#p04box03 .naiyou_list .naiyou01:last-child { margin-bottom: 0; }
#p04box03 .naiyou_list .naiyou01 .title { font-size: 38px; letter-spacing: 0.02em; line-height: 73px; padding-left: 81px; margin-bottom: 26px; }
#p04box03 .naiyou_list .naiyou01 .title.naiyou-title01 { background: url("../img/p04/title01.svg") no-repeat center left; background-size: contain; }
#p04box03 .naiyou_list .naiyou01 .list li { margin-bottom: 35px; padding-left: 36px; box-sizing: border-box; }
#p04box03 .naiyou_list .naiyou01 .list li:last-child { margin-bottom: 0; }
#p04box03 .naiyou_list .naiyou01 .list li .list-title { font-size: 28px; line-height: 40px; margin-bottom: 6.2px; position: relative; }
#p04box03 .naiyou_list .naiyou01 .list li .list-title::before { content: ""; display: block; width: 5px; height: 5px; background: #1A4687; position: absolute; top: 50%; left: -15px; transform: translateY(-50%); border-radius: 50%; }
#p04box03 .naiyou_list .naiyou01 .list li .list-title::after { content: ""; display: block; width: 74px; height: 1px; background: #1A4687; position: absolute; top: 50%; left: -86.5px; transform: translateY(-50%); }

/*法人・企業様へ　p05
=========================================== */
.page-business #nav-sec .btn01 { max-width: 542px; }

#p05box01 { padding: 56px 0; position: relative; }
#p05box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -49px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p05box01 .title { font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 17px; position: relative; }
#p05box01 .title::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; bottom: -61px; left: 67px; }
#p05box01 .title::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -128.5px; right: -4px; }
#p05box01 .nayami-list { width: 781px; margin: 0 auto; position: relative; }
#p05box01 .nayami-list::before { content: ""; display: block; width: 142px; height: 220px; background: url("../img/p02/bg-img03.png") no-repeat center; background-size: cover; position: absolute; bottom: -32px; left: -152px; }
#p05box01 .nayami-list::after { content: ""; display: block; width: 157px; height: 180px; background: url("../img/p02/bg-img04.png") no-repeat center; background-size: cover; position: absolute; bottom: -4.5px; right: -159px; }
#p05box01 .nayami-list li { display: flex; align-items: center; width: 100%; background: linear-gradient(90deg, #416fc6 0%, #87acf2 100%); border-radius: 36px; margin-bottom: 8px; padding: 20px 51px; box-sizing: border-box; line-height: 29px; font-size: 20px; font-weight: 500; }
#p05box01 .nayami-list li:last-child { margin-bottom: 0; }
#p05box01 .nayami-list li span { padding-left: 37px; background: url("../img/p02/list-icon01.svg") no-repeat top 2px left; }
#p05box01 .nayami-list li.line2 { border-radius: 52px; }
#p05box01 .text { width: 953px; margin: 150px auto 6px; position: relative; }
#p05box01 .text::before { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; top: -124px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p05box01 .img { width: 100%; height: 384px; }

#p05box02 { padding: 109px 0 150px; position: relative; background: rgba(65, 111, 198, 0.12); }
#p05box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p05box02 .service_list { width: 1000px; margin: 0 auto; }
#p05box02 .service_list .title01 { margin-bottom: 28px; margin-left: 11px; }
#p05box02 .service_list .service01 { height: 370px; border-radius: 23px; background: #FFFFFF; overflow: hidden; margin-bottom: 48px; }
#p05box02 .service_list .service01:nth-child(2n) .img { order: 0; }
#p05box02 .service_list .service01:last-child { margin-bottom: 0; }
#p05box02 .service_list .service01 .img { width: 437px; height: 100%; position: relative; order: 1; }
#p05box02 .service_list .service01 .img img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#p05box02 .service_list .service01 .img a { display: flex; align-items: center; width: 100%; min-height: 55px; position: absolute; left: 0; bottom: 27px; padding-left: 32px; box-sizing: border-box; background: url("../img/common/arrow.png") no-repeat bottom right 33px; background-size: 55px; }
#p05box02 .service_list .service01 .img a:hover { text-decoration: none; background-position: bottom right 18px; }
#p05box02 .service_list .service01 .img a span { font-size: 35px; font-weight: 700; color: #fff; letter-spacing: 0.02em; line-height: 40px; }
#p05box02 .service_list .service01 .text_box { width: calc(100% - 437px); height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; }
#p05box02 .service_list .service01 .text_box .service-title { width: 436px; font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 12px; }
#p05box02 .service_list .service01 .text_box .text { width: 436px; }

/*建設業者様へ　p06
=========================================== */
.page-construction #nav-sec .btn01 { max-width: 542px; }

#p06box01 { padding: 56px 0; position: relative; }
#p06box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -49px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p06box01 .title { font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 17px; position: relative; }
#p06box01 .title::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; bottom: -61px; left: 67px; }
#p06box01 .title::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -128.5px; right: -4px; }
#p06box01 .nayami-list { width: 781px; margin: 0 auto; position: relative; }
#p06box01 .nayami-list::before { content: ""; display: block; width: 142px; height: 220px; background: url("../img/p02/bg-img03.png") no-repeat center; background-size: cover; position: absolute; bottom: -32px; left: -152px; }
#p06box01 .nayami-list::after { content: ""; display: block; width: 157px; height: 180px; background: url("../img/p02/bg-img04.png") no-repeat center; background-size: cover; position: absolute; bottom: -4.5px; right: -159px; }
#p06box01 .nayami-list li { display: flex; align-items: center; width: 100%; background: linear-gradient(90deg, #416fc6 0%, #87acf2 100%); border-radius: 36px; margin-bottom: 8px; padding: 20px 51px; box-sizing: border-box; line-height: 29px; font-size: 20px; font-weight: 500; }
#p06box01 .nayami-list li:last-child { margin-bottom: 0; }
#p06box01 .nayami-list li span { padding-left: 37px; background: url("../img/p02/list-icon01.svg") no-repeat top 2px left; }
#p06box01 .text { width: 953px; margin: 150px auto 6px; position: relative; }
#p06box01 .text::before { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; top: -124px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p06box01 .img { width: 100%; height: 384px; }

#p06box02 { padding: 109px 0 150px; position: relative; background: rgba(65, 111, 198, 0.12); }
#p06box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p06box02 .service_list { width: 1000px; margin: 0 auto; }
#p06box02 .service_list .title01 { margin-bottom: 28px; margin-left: 11px; }
#p06box02 .service_list .service01 { height: 370px; border-radius: 23px; background: #FFFFFF; overflow: hidden; margin-bottom: 48px; }
#p06box02 .service_list .service01:nth-child(2n) .img { order: 0; }
#p06box02 .service_list .service01:last-child { margin-bottom: 0; }
#p06box02 .service_list .service01 .img { width: 437px; height: 100%; position: relative; order: 1; }
#p06box02 .service_list .service01 .img img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#p06box02 .service_list .service01 .img a { display: flex; align-items: center; width: 100%; min-height: 55px; position: absolute; left: 0; bottom: 27px; padding-left: 32px; box-sizing: border-box; background: url("../img/common/arrow.png") no-repeat bottom right 33px; background-size: 55px; }
#p06box02 .service_list .service01 .img a:hover { text-decoration: none; background-position: bottom right 18px; }
#p06box02 .service_list .service01 .img a span { font-size: 35px; font-weight: 700; color: #fff; letter-spacing: 0.02em; line-height: 40px; }
#p06box02 .service_list .service01 .text_box { width: calc(100% - 437px); height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; }
#p06box02 .service_list .service01 .text_box .service-title { width: 436px; font-size: 38px; line-height: 55px; letter-spacing: 0.02em; margin-bottom: 12px; }
#p06box02 .service_list .service01 .text_box .text { width: 436px; }

/*導入実績　p07
=========================================== */
#p07box01 { padding-top: 28.5px; }
#p07box01 .title01 { padding-left: 24px; width: 1100px; box-sizing: border-box; margin: 0 auto; position: relative; }
#p07box01 .title01::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; bottom: -50.5px; right: 0; }
#p07box01 .works_list .works_list01 { padding: 100px; }
#p07box01 .works_list .works_list01 .waku { background: #fff; border-radius: 25px; overflow: hidden; }
#p07box01 .works_list .works_list01 .waku .works_title { display: flex; align-items: center; width: 100%; height: 200px; padding-left: 46px; box-sizing: border-box; font-size: 35px; letter-spacing: 0.02em; line-height: 40px; }
#p07box01 .works_list .works_list01 .waku .cnt { width: 1057px; border-radius: 24px 24px 0 0; padding: 35px 35px 30px; box-sizing: border-box; background: #fff; margin: -40px auto 0; }
#p07box01 .works_list .works_list01 .waku .cnt .works01 { width: 240px; margin-right: 9px; margin-top: 27px; }
#p07box01 .works_list .works_list01 .waku .cnt .works01:nth-child(-n+4) { margin-top: 0; }
#p07box01 .works_list .works_list01 .waku .cnt .works01:nth-child(4n), #p07box01 .works_list .works_list01 .waku .cnt .works01:last-child { margin-right: 0; }
#p07box01 .works_list .works_list01 .waku .cnt .works01 .img { width: 100%; height: 170px; margin-bottom: 4px; position: relative; overflow: hidden; }
#p07box01 .works_list .works_list01 .waku .cnt .works01 .img a { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#p07box01 .works_list .works_list01 .waku .cnt .works01 .img a:hover { transform: scale(1.1); }
#p07box01 .works_list .works_list01 .waku .cnt .works01 h3 { width: 216px; font-size: 20px; font-weight: 400; line-height: 25px; margin: 0 auto; }
#p07box01 .works_list #works_box01 { background: rgba(65, 111, 198, 0.12); }
#p07box01 .works_list #works_box01 .waku .works_title { background: url("../img/p07/img01.jpg") no-repeat center; background-size: cover; }
#p07box01 .works_list #works_box02 { background: rgba(65, 111, 198, 0.3); }
#p07box01 .works_list #works_box02 .waku .works_title { background: url("../img/p07/img02.jpg") no-repeat center; background-size: cover; }
#p07box01 .works_list #works_box03 { background: rgba(65, 111, 198, 0.12); }
#p07box01 .works_list #works_box03 .waku .works_title { background: url("../img/p07/img03.jpg") no-repeat center; background-size: cover; }

/*よくある質問　p08
=========================================== */
#p08box01 { padding: 37px 0 52px; }
#p08box01 .nav_list { justify-content: center; }
#p08box01 .nav_list .nav_btn { width: 250px; height: 76px; padding-bottom: 24px; margin-right: 15px; }
#p08box01 .nav_list .nav_btn:last-child { margin-right: 0; }
#p08box01 .nav_list .nav_btn a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: linear-gradient(90deg, #416fc6 0%, #4884f5 100%); position: relative; }
#p08box01 .nav_list .nav_btn a::after { content: ""; display: block; width: 36px; height: 18px; background: url("../img/p08/nav_arrow.svg") no-repeat center; position: absolute; bottom: -24px; left: 50%; transform: translateX(-50%); transition: 0.3s; }
#p08box01 .nav_list .nav_btn a:hover { text-decoration: none; }
#p08box01 .nav_list .nav_btn a:hover::after { bottom: -39px; }
#p08box01 .nav_list .nav_btn a span { text-align: center; font-size: 23px; font-weight: 500; line-height: 28px; }

#p08box02 { padding: 74px 0; }
#p08box02 .qanda_title { background: url("../img/p08/icon_electricity.svg") no-repeat center left; background-size: 73px; }

#p08box03 { padding: 74px 0; }
#p08box03 .qanda_title { background: url("../img/p08/icon_phone.svg") no-repeat center left; background-size: 73px; }

#p08box04 { padding: 74px 0; }
#p08box04 .qanda_title { background: url("../img/p08/icon_network.svg") no-repeat center left; background-size: 73px; }

#p08box05 { padding: 74px 0 23px; }
#p08box05 .qanda_title { background: url("../img/p08/icon_other.svg") no-repeat center left; background-size: 73px; }

.qanda-sec:nth-child(2n) { background: rgba(65, 111, 198, 0.07); }

.qanda_title { font-size: 38px; letter-spacing: 0.02em; line-height: 73px; padding-left: 81px; margin-bottom: 20px; }

.qanda_list { width: 100%; padding-left: 85px; box-sizing: border-box; }
.qanda_list .qanda01 { border-bottom: 1px dashed #707070; }
.qanda_list .qanda01:first-child .title { background: url("../img/p08/qanda.svg") no-repeat top 4px left; padding-top: 0; }
.qanda_list .qanda01:first-child .title.close { background: url("../img/p08/qanda_close.svg") no-repeat top 4px left; }
.qanda_list .qanda01 .title { font-size: 28px; line-height: 40px; background: url("../img/p08/qanda.svg") no-repeat top 34px left; padding: 30px 0 30px 41px; cursor: pointer; transition: 0.3s; }
.qanda_list .qanda01 .title.close { background: url("../img/p08/qanda_close.svg") no-repeat top 34px left; padding-bottom: 17px; }
.qanda_list .qanda01 .text { display: none; margin-bottom: 30px; padding-left: 41px; }

/*会社概要　p09
=========================================== */
.page-company #contact-sec { padding: 37px 0 100px; }
.page-company #nav-sec .btn_list { justify-content: space-between; }
.page-company #nav-sec .btn_list .btn01.wide { max-width: 542px; margin-right: 0; margin-bottom: 47px; }

#p09box01 { padding: 28.5px 0 22.5px; }
#p09box01 .cnt { align-items: flex-end; margin-bottom: 52px; }
#p09box01 .cnt .info { width: 600px; padding-left: 92px; box-sizing: border-box; }
#p09box01 .cnt .info .title01 { margin-bottom: 48px; }
#p09box01 .cnt .info .info-table { width: 452px; margin-left: 6px; margin-bottom: 41px; }
#p09box01 .cnt .info .info-table tr { display: block; padding: 13px 0; border-bottom: 1px solid #B9B9B9; }
#p09box01 .cnt .info .info-table tr:first-child { padding-top: 0; }
#p09box01 .cnt .info .info-table tr:last-child { padding-bottom: 0; border-bottom: 0; }
#p09box01 .cnt .info .info-table tr th { width: 144px; color: #1A4687; }
#p09box01 .cnt .img { width: 500px; }
#p09box01 .map { width: 1100px; height: 472px; }

#p09box02 { padding: 22.5px 0 37px; }
#p09box02 .title01 { margin-left: 47px; margin-bottom: 15.5px; }
#p09box02 .text { margin-left: 47px; width: 1049px; }

/*お見積依頼・お問い合わせ　p10
=========================================== */
#p10box01 { padding: 60px 0 100px; }
#p10box01 .waku { width: 818px; padding: 18px 20px; margin: 0 auto; background: rgba(65, 111, 198, 0.12); position: relative; }
#p10box01 .waku::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; top: 87px; left: -74px; }
#p10box01 .waku::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; top: 75px; right: -145px; }
#p10box01 .waku .cnt { width: 100%; background: #FFFFFF; border-radius: 14px; padding: 33px 0 34px; }
#p10box01 .waku .cnt .title { font-size: 28px; letter-spacing: 0.02em; line-height: 40px; margin-bottom: 6px; }
#p10box01 .waku .cnt .tel_box { justify-content: center; flex-direction: column; }
#p10box01 .waku .cnt .tel_box .tel { font-weight: 700; }
#p10box01 .waku .cnt .tel_box .tel .num { font-family: "メイリオ"; font-size: 53px; margin-left: 0; font-style: italic; padding-left: 60px; background: url("../img/p10/icon_tel.svg") no-repeat center left; line-height: 72px; }
#p10box01 .waku .cnt .tel_box .text { margin-left: 0; line-height: 29px; font-size: 20px; font-weight: 500; }

#p10box02 { padding: 87px 0 100px; background: rgba(65, 111, 198, 0.12); }
#p10box02 .wrap { width: 1000px; }
#p10box02 .title { font-size: 38px; letter-spacing: 0.02em; line-height: 55px; margin-bottom: 24px; }
#p10box02 .text { width: 765px; margin: 0 auto; }
#p10box02 .text .text_list li { padding-left: 1em; text-indent: -1em; }

ul.contact-state { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; position: relative; z-index: 1; margin-top: 37px; }
ul.contact-state li { width: 320px; height: 50px; position: relative; background-color: rgba(179, 179, 179, 0.68); text-align: center; }
ul.contact-state li::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-top: 25px solid transparent; border-bottom: 25px solid transparent; border-left: 10px solid rgba(179, 179, 179, 0.68); border-right: 0; position: absolute; top: 0; right: -10px; }
ul.contact-state li span { font-size: 18px; font-weight: 500; color: #FFFFFF; line-height: 50px; }
ul.contact-state li.state03::after { display: none; }

ul.contact-state.contact-state01 li.state01 { background-color: rgba(0, 0, 0, 0.49); }
ul.contact-state.contact-state01 li.state01::after { border-left: 10px solid rgba(0, 0, 0, 0.49); }

ul.contact-state.contact-state02 li.state02 { background-color: rgba(0, 0, 0, 0.49); }
ul.contact-state.contact-state02 li.state02::after { border-left: 10px solid rgba(0, 0, 0, 0.49); }

form.wpcf7-form { margin-top: -120px; padding-top: 120px; /*placeholder*/ /*text*/ /*textarea*/ /*select*/ /*お問い合わせ項目*/ /*住所*/ /*年齢*/ /*履歴書*/ /*添付ファイル*/ /*履歴書 入力フォーム*/ /*doui-check*/ /*privacypolicy*/ /*送信ボタン*/ }
form.wpcf7-form .contactTBL { width: 100%; margin-top: 21px; border-radius: 23px; background: #FFFFFF; padding: 47px 17px 20px; box-sizing: border-box; }
form.wpcf7-form tr { width: 876px; display: block; margin: 0 auto 25px; }
form.wpcf7-form tr:last-child { margin-bottom: 74px; }
form.wpcf7-form th { width: 241px; font-weight: 400; padding-left: 47px; box-sizing: border-box; position: relative; padding-right: 15px; line-height: 26px; }
form.wpcf7-form th .hissu { font-size: 15px; line-height: 21px; color: #FF0000; position: absolute; top: 8px; left: 0; }
form.wpcf7-form th .ninni { font-size: 15px; font-weight: 500; line-height: 21px; color: #A5A5A5; position: absolute; top: 8px; left: 0; }
form.wpcf7-form td { width: 620px; }
form.wpcf7-form td .placeholder { font-size: 15px; line-height: 22px; color: #B1B1B1; }
form.wpcf7-form input.wpcf7-text, form.wpcf7-form textarea.wpcf7-form-control.wpcf7-textarea, form.wpcf7-form select.wpcf7-select { color: #000000; }
form.wpcf7-form input.wpcf7-text::placeholder, form.wpcf7-form textarea.wpcf7-form-control.wpcf7-textarea::placeholder, form.wpcf7-form select.wpcf7-select::placeholder { color: #B1B1B1; }
form.wpcf7-form input.wpcf7-text { width: 100%; height: 35px; box-sizing: border-box; padding: 7px 9px; font-size: 15px; border: 1px solid #B9B9B9; font-family: 'NotoSansJP'; border-radius: 0; font-weight: 400; }
form.wpcf7-form textarea.wpcf7-form-control.wpcf7-textarea { width: 100%; height: 196px; box-sizing: border-box; padding: 7px 9px; font-size: 15px; border: 1px solid #B9B9B9; font-family: 'NotoSansJP'; border-radius: 0; font-weight: 400; }
form.wpcf7-form .textarea th { vertical-align: top; margin-top: 2px; }
form.wpcf7-form .textarea th .ninni { top: 2px; }
form.wpcf7-form select.wpcf7-select { width: 194px; height: 35px; box-sizing: border-box; padding: 5px 30px 9px 9px; font-size: 15px; font-weight: 400; border: 1px solid #B9B9B9; font-family: 'NotoSansJP'; background: url("../img/p10/select_arrow.svg") no-repeat center right 13.5px, #FFFFFF; -webkit-appearance: none; appearance: none; border-radius: 0; }
form.wpcf7-form select.wpcf7-select option { color: #000; }
form.wpcf7-form select.wpcf7-select.w100 { width: 100%; }
form.wpcf7-form td.koumoku .wpcf7-list-item { margin-left: 35px; }
form.wpcf7-form td.koumoku .wpcf7-list-item.first { margin-left: 0; }
form.wpcf7-form .address_box .address-list li { display: flex; align-items: flex-start; margin-bottom: 21px; }
form.wpcf7-form .address_box .address-list li:last-child { margin-bottom: 0; }
form.wpcf7-form .address_box .address-list li .th { width: 68px; margin-right: 8px; line-height: 35px; }
form.wpcf7-form .address_box .address-list li .td { width: calc(100% - 76px); }
form.wpcf7-form .address_box .address-list li.zip1 .td input.wpcf7-text { width: 133px; }
form.wpcf7-form .address_box .address-list li.add01 .th { width: 187px; }
form.wpcf7-form .address_box .address-list li.add01 .td { width: calc(100% - 195px); }
form.wpcf7-form input.wpcf7-text.age { width: 72px; margin-right: 8px; }
form.wpcf7-form .resume .wpcf7-list-item { margin-left: 47px; }
form.wpcf7-form .resume .wpcf7-list-item.first { margin-left: 0; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler { border: none; border-radius: 0; margin-bottom: 0; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container { padding: 0; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner { width: auto; text-align: left; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner h3, form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner span { display: none; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap { display: flex; align-items: center; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { content: "選択されていません"; font-size: 15px; color: #B1B1B1; margin-left: 14px; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn { display: flex; width: 165px; height: 35px; align-items: center; background: #686868; font-size: 17px; line-height: 25px; transition: 0.3s; color: #fff; padding: 3px 23px 7px; box-sizing: border-box; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn:hover { opacity: 0.7; }
form.wpcf7-form .codedropz-upload-wrapper .codedropz-upload-handler .dnd-upload-counter { display: none; }
form.wpcf7-form .codedropz-upload-wrapper .wpcf7c-conf.wpcf7c-conf-hidden { display: none; }
form.wpcf7-form .codedropz-upload-wrapper:has(.dnd-upload-status) .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { display: none; }
form.wpcf7-form .resume-text { display: flex; justify-content: center; background: #F8F4EF; padding-top: 50px; margin-bottom: 25px; }
form.wpcf7-form .resume-text tr:last-child { margin-bottom: 54px; }
form.wpcf7-form .doui-box th { vertical-align: top; line-height: 34px; padding-left: 0; }
form.wpcf7-form .doui-box td .wpcf7-list-item { margin: 0; line-height: 25px; }
form.wpcf7-form .privacy_text { font-size: 15px; line-height: 25px; }
form.wpcf7-form .contact-submit.flex { background: #E7EDF7; border-radius: 0 0 20px 20px; padding: 31px 0 29px; justify-content: center; flex-direction: row-reverse; }
form.wpcf7-form .contact-submit.flex .btn02 { width: 280px; height: 60px; }
form.wpcf7-form .contact-submit.flex .btn02 input.wpcf7-form-control { width: 100%; height: 100%; cursor: pointer; transition: 0.3s; font-size: 20px; line-height: 60px; text-align: center; box-sizing: border-box; border: none; font-family: 'NotoSansJP'; color: #fff; font-weight: 400; background: #5583BE; border-radius: 5px; box-shadow: 2px 2px #0F294A; }
form.wpcf7-form .contact-submit.flex .btn02 input.wpcf7-form-control:hover { transform: translate(2px, 2px); box-shadow: none; }
form.wpcf7-form .contact-submit.flex .btn02:has(.wpcf7c-force-hide) { display: none; }
form.wpcf7-form .contact-submit.flex .btn02.back { margin-right: 20px !important; }
form.wpcf7-form .contact-submit.flex .btn02.back input.wpcf7-form-control { color: #5583BE; background: #FFFFFF; }
form.wpcf7-form .contact-submit.flex .wpcf7c-elm-step2.mt20 { margin-top: 20px; }
form.wpcf7-form .contact-submit.flex input.wpcf7-form-control:focus { outline: none; }
form.wpcf7-form .wpcf7c-conf { background-color: #D4D4D4 !important; }
form.wpcf7-form input:-webkit-autofill, form.wpcf7-form input:-internal-autofill-selected { -webkit-appearance: none; -webkit-box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; }
form.wpcf7-form .wpcf7 .ajax-loader { display: none !important; }
form.wpcf7-form .wpcf7-spinner { display: none !important; }

/*採用情報　p11
=========================================== */
#p11box01 { padding: 15px 0 132px; position: relative; }
#p11box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p11box01 .title01 { padding-top: 41px; margin-bottom: 24px; }
#p11box01 .title01 .eng { left: 107px; }
#p11box01 .point { margin-bottom: 24px; line-height: 25px; position: relative; }
#p11box01 .point::before { content: ""; display: block; width: 24px; height: 24px; background: url("../img/p02/bg-img01.png") no-repeat center; background-size: cover; position: absolute; top: 13px; left: 67px; }
#p11box01 .point::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; top: 1px; right: -4px; }
#p11box01 .img_box { width: 1000px; height: 350px; margin: 43.5px auto 0; position: relative; }
#p11box01 .img_box::before { content: ""; display: block; width: 43px; height: 43px; background: url("../img/p11/circle_big.png") no-repeat center; background-size: cover; position: absolute; top: 41px; left: -154px; }
#p11box01 .img_box::after { content: ""; display: block; width: 25px; height: 25px; background: url("../img/p11/circle.png") no-repeat center; background-size: cover; position: absolute; top: 206px; right: 309px; }
#p11box01 .img_box img { width: 500px; }

#p11box02 { padding: 97px 0 150px; background: rgba(65, 111, 198, 0.12); position: relative; }
#p11box02::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p11box02 .title01 { width: 1000px; margin-bottom: 12px; margin-left: 74px; padding-top: 104px; }
#p11box02 .title01 .eng { left: -68px; }
#p11box02 .day-table { display: block; width: 1000px; margin: 0 auto; background: #FFFFFF; border-radius: 23px; padding: 68px 65px 62px; box-sizing: border-box; position: relative; }
#p11box02 .day-table::before { content: ""; display: block; width: 620px; height: 438px; background: url("../img/p11/img03.png") no-repeat center; background-size: cover; position: absolute; top: -360px; right: -70px; }
#p11box02 .day-table tr { display: flex; margin-bottom: 24px; align-items: center; }
#p11box02 .day-table tr:first-child { align-items: flex-start; }
#p11box02 .day-table tr:last-child { margin-bottom: 0; }
#p11box02 .day-table tr th { width: 103px; font-size: 22px; letter-spacing: 0.02em; line-height: 37px; }
#p11box02 .day-table tr td { width: calc(100% - 103px); }

#p11box03 { padding: 100px 0 23.5px; }
#p11box03 .title01 { margin: 0 auto 68px; padding-top: 72px; padding-left: 47px; }
#p11box03 .title01 .eng { left: 0px; }
#p11box03 .recruit-table { display: block; width: 1000px; margin: 0 auto 27px; }
#p11box03 .recruit-table tr { display: block; padding: 56px 0; border-bottom: 1px solid #9F9F9F; position: relative; }
#p11box03 .recruit-table tr::after { content: ""; display: block; width: 70.5px; height: 1px; background: #9F9F9F; transform: rotate(45deg); position: absolute; bottom: 24px; left: -60px; }
#p11box03 .recruit-table tr:first-child { padding-top: 0; }
#p11box03 .recruit-table tr th { width: 146px; font-size: 22px; letter-spacing: 0.02em; line-height: 32px; }
#p11box03 .recruit-table tr td { width: calc(100% - 146px); }
#p11box03 .btn_box { width: 1000px; height: 162px; background: #5583BE; display: flex; align-items: center; justify-content: center; margin: 0 auto; }

/*エントリー　p12
=========================================== */
.page-entry ul.contact-state { margin-top: 29px; }
.page-entry form.wpcf7-form .contactTBL { padding: 47px 0 20px; }
.page-entry form.wpcf7-form tr:last-child { margin-bottom: 25px; }
.page-entry form.wpcf7-form textarea.wpcf7-form-control.wpcf7-textarea { height: 100px; }
.page-entry form.wpcf7-form tr.doui-box { margin-bottom: 56px; }
.page-entry form.wpcf7-form .contact-submit.flex { width: 966px; margin: 0 auto; }

#p12box01 { padding: 28.5px 0 141px; position: relative; }
#p12box01::after { content: ""; display: block; width: 12.7px; height: 97.5px; background: url("../img/main/arrow.png") no-repeat center; position: absolute; bottom: -41px; left: 50%; transform: translateX(-50%); background-size: cover; }
#p12box01 .title01 { padding-top: 104px; margin-bottom: 24px; padding-left: 92px; }
#p12box01 .title01 .eng { left: 24px; }
#p12box01 .flow-list { width: 847px; margin: 0 auto; align-items: flex-start; position: relative; }
#p12box01 .flow-list::before { content: ""; display: block; width: 43px; height: 43px; background: url("../img/p11/circle_big.png") no-repeat center; background-size: cover; position: absolute; top: 193px; left: -231px; }
#p12box01 .flow-list::after { content: ""; display: block; width: 147px; height: 103.5px; background: url("../img/p02/bg-img02.png") no-repeat center; background-size: cover; position: absolute; top: -27.7px; right: -131px; }
#p12box01 .flow-list .flow01 { width: 162px; margin-right: 50px; }
#p12box01 .flow-list .flow01:last-child { width: 211px; margin-right: 0; }
#p12box01 .flow-list .flow01 .num { font-size: 43px; letter-spacing: 0.02em; line-height: 62px; margin-bottom: 37px; position: relative; }
#p12box01 .flow-list .flow01 .num::after { content: ""; display: block; width: 46px; height: 2px; background: #C4CFE8; position: absolute; bottom: -18.5px; left: 0; }
#p12box01 .flow-list .flow01 .title { font-size: 22px; letter-spacing: 0.02em; line-height: 32px; margin-bottom: 10.5px; }
#p12box01 .flow-list .flow01 .text { line-height: 27px; }

#p12box02 { padding: 100px 0 152px; background: rgba(65, 111, 198, 0.12); }
#p12box02 .wrap { width: 1000px; }
#p12box02 .title01 { margin-bottom: 14px; margin-left: 42px; padding-top: 104px; }
#p12box02 .title01 .eng { left: -68px; }
#p12box02 .text_list { width: 900px; margin: 0 auto; }
#p12box02 .text_list li { padding-left: 1em; text-indent: -1em; }

/*Thanks・404
=========================================== */
#other { padding: 73px 0 100px; text-align: center; }
#other h2 { font-size: 24px; margin-bottom: 25px; }
#other p { font-size: 18px; padding-left: 15px; position: relative; margin: 10px 0; }
#other .btn01 { margin: 60px auto 0; }

/*プライバシーポリシー
=========================================== */
div#pageBox01 { padding: 73px 0 100px; }

.page-cont p { line-height: 26px; }
.page-cont ul { line-height: 26px; }

h2.pp-title01 { font-size: 24px; border-bottom: solid 2px; margin-bottom: 25px; padding-bottom: 10px; color: #1A4687; }

h3.pp-title02 { font-size: 20px; position: relative; margin: 25px 0; padding-left: 10px; color: #1A4687; }
h3.pp-title02::before { content: ""; width: 5px; height: 65%; background: #1A4687; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; }

/*ウインドー幅ごと
=========================================== */
/*edge対策
=========================================== */
