@charset "UTF-8";
/* TOP
------------------------------------------*/
div#mv.home-mv { height: 670px; background: url("../img/main/mv01.jpg") no-repeat center; background-size: cover; color: #fff; }

div#mv-cont { position: absolute; left: 170px; bottom: 100px; }

.mv-text01 { margin-bottom: 13px; filter: drop-shadow(0 0 10px black); }

.mv-text02 { font-size: 20px; font-weight: 700; text-shadow: 0 0 10px black; line-height: 1.6; }

.mv-time { margin-top: 27px; }

div#top-news { position: absolute; z-index: 2; right: 0; bottom: 0; background: #fff; box-sizing: border-box; width: 952px; height: 72px; display: flex; flex-wrap: wrap; align-items: center; padding: 13px 22px 13px 40px; }
div#top-news .tit { font-size: 30px; color: #093182; font-weight: 500; font-family: "robo"; margin-right: 30px; }
div#top-news .top-news-cont { max-width: 612px; }

.more-btn { width: 142px; height: 40px; display: table; margin-left: auto; }
.more-btn a { text-decoration: none; display: table-cell; text-align: center; vertical-align: middle; background: #FEEEEE; position: relative; border-radius: 20px; font-weight: 500; color: #D50000; }
.more-btn a span.arrow { position: absolute; z-index: 2; right: 10px; top: 50%; transform: translateY(-50%); transition: 0.3s; }
.more-btn a span.arrow img { display: block; opacity: 1; }
.more-btn a:hover { opacity: 0.7; }
.more-btn a:hover span.arrow { right: 5px; }

artcle.top-news-art a { align-items: center; text-decoration: none; }
artcle.top-news-art a .n-date { padding-top: 3px; }
artcle.top-news-art a .cate { margin-right: 20px; }
artcle.top-news-art a .text { max-width: 398px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
artcle.top-news-art a:hover { opacity: 0.7; }
artcle.top-news-art a:hover .text { text-decoration: underline; }

.n-date { font-size: 14px; font-family: "robo"; color: #8F8F8F; margin-right: 20px; }

.cate { color: #093182; font-weight: 500; padding: 0 19px; border: solid 1px #093182; border-radius: 20px; line-height: 29px; }

section { position: relative; }

section#about-sec { background: url("../img/top/bg01.jpg") no-repeat center top; background-size: cover; margin-top: 130px; padding-top: 1px; color: #fff; padding-bottom: 200px; }
section#about-sec .wrap { padding: 120px 0 134px; }
section#about-sec .btn01 { margin: 60px 0 0 auto; }
section#about-sec .titles01 span.dot-text { margin-bottom: 30px; }
section#about-sec .titles01 span.dot-text > span:before { top: 7px; }
section#about-sec .ovh { position: relative; margin-top: -120px; }

div#belt-slider .bs { margin-right: 10px; }

.top-cont01.flex { justify-content: space-between; flex-direction: row-reverse; align-items: flex-start; margin-bottom: 60px; min-height: 396px; }
.top-cont01.flex .img { width: 436px; position: relative; margin-left: -66px; }
.top-cont01.flex .img .img02 { position: absolute; left: -104px; bottom: -76px; }
.top-cont01.flex .cont { width: 580px; }
.top-cont01.flex .cont .text { line-height: 2; }

.top-reasonBox.flex > .box { border: solid 1px #426BBC; border-left: none; width: 220px; box-sizing: border-box; padding-top: 50px; padding-bottom: 20px; text-align: center; }
.top-reasonBox.flex > .box .ico { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 60px; height: 60px; margin: 0 auto 20px; }
.top-reasonBox.flex > .box .tit { width: 100%; height: 80px; display: table; font-size: 22px; font-weight: 700; margin-bottom: 45px; }
.top-reasonBox.flex > .box .tit > div { display: table-cell; text-align: center; vertical-align: middle; }
.top-reasonBox.flex > .box .tit > div .big { font-size: 30px; }
.top-reasonBox.flex > .box .tit > div .robo { position: relative; top: 3px; }
.top-reasonBox.flex > .box .text { font-weight: 700; }
.top-reasonBox.flex > .box.box01 { border-left: solid 1px #426BBC; }
.top-reasonBox.flex > .box.box01 .tit { margin-bottom: 26px; }
.top-reasonBox.flex > .box.box05 .tit { margin-bottom: 30px; }
.top-reasonBox.flex .time-set.flex { width: 162px; margin: 0 auto 5px; justify-content: space-between; }
.top-reasonBox.flex .time-set.flex > div { width: 68px; text-align: center; position: relative; }
.top-reasonBox.flex .time-set.flex > div .t-tit { width: 100%; height: 25px; display: table; }
.top-reasonBox.flex .time-set.flex > div .t-tit > span { display: table-cell; border: solid 1px #fff; border-radius: 15px; font-size: 14px; font-weight: 700; }
.top-reasonBox.flex .time-set.flex > div .t-time { font-size: 20px; font-weight: 500; margin-top: 4px; }
.top-reasonBox.flex .time-set.flex div.left:before { content: ""; width: 0; height: 0; border-left: solid 8px #fff; border-top: solid 6px transparent; border-bottom: solid 6px transparent; position: absolute; left: calc(100% + 9px); top: 7px; }
.top-reasonBox.flex .time-set.flex div.right .t-tit > span { background: #fff; color: #093182; }

.r-bikou01 { padding: 0 10px; text-align: left; font-size: 14px; line-height: 1.2; }
.r-bikou01 p { position: relative; padding-left: 15px; }
.r-bikou01 p:before { content: "※"; position: absolute; left: 0; top: 0; }

section#case-sec { padding: 120px 0; position: relative; z-index: 3; margin-top: -200px; margin-bottom: -648px; }
section#case-sec .wrap { position: relative; z-index: 2; }

section#case-sec:before { content: ""; position: absolute; border-left-width: 0; top: 0; height: 100%; width: calc(100% - 60px); background: #fff; }

div.case-list.flex > div.box { width: 50%; margin-top: -1px; }
div.case-list.flex > div.box a { text-decoration: none; align-items: center; background: #fff; border: solid 1px #EEEEEE; position: relative; }
div.case-list.flex > div.box a .img { overflow: hidden; width: 158px; }
div.case-list.flex > div.box a .img .in-img { padding-top: 100%; transition: 0.3s; }
div.case-list.flex > div.box a .titles01.t-case { width: 320px; margin-bottom: 0; margin-left: auto; }
div.case-list.flex > div.box a .titles01.t-case span.dot-text { font-size: 14px; font-weight: 700; font-family: "robo"; line-height: 22px; }
div.case-list.flex > div.box a .titles01.t-case span.dot-text > span:before { top: 9px; background: #D50000; width: 3px; height: 3px; }
div.case-list.flex > div.box a .titles01.t-case .jp { font-size: 20px; color: #0A0A0A; }
div.case-list.flex > div.box a .arrow { position: absolute; z-index: 2; width: 24px; height: 24px; border-radius: 100%; right: 20px; bottom: 20px; background: url("../img/common/btn-arrow01.svg") no-repeat center right 7px #FEEEEE; background-size: 8px; }
div.case-list.flex > div.box a:hover .img .in-img { transform: scale(1.1); }
div.case-list.flex > div.box:nth-child(2n) a { border-left: none; }

section#tec-sec { padding: 788px 0 140px; color: #fff; background: #042058; position: relative; }
section#tec-sec .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }

section#tec-sec:before { content: ""; width: 210px; height: 40px; background: #fff; position: absolute; left: 0; bottom: 0; }

div.tec-list01 { width: 930px; padding-top: 40px; }

div.tecBox.flex { margin-bottom: 60px; padding-bottom: 60px; background: url("../img/top/line01.svg") repeat-x left bottom; justify-content: space-between; }
div.tecBox.flex > .left { width: 400px; display: flex; flex-wrap: wrap; }
div.tecBox.flex > .left .titles01 { margin-bottom: 30px; }
div.tecBox.flex > .left .titles01 .jp { font-size: 34px; margin-top: 10px; }
div.tecBox.flex > .left .img { order: 2; margin-top: 40px; }
div.tecBox.flex > .left .tit-box { order: 1; }
div.tecBox.flex > .right { width: 450px; padding-top: 86px; }
div.tecBox.flex > .right .text { line-height: 2; }
div.tecBox.flex > .right .btn01 { margin-top: 60px; }

div.tecBox.flex:last-child { margin-bottom: 0; padding-bottom: 0; background: none; }

.copy01 { font-weight: 700; font-size: 20px; }

.v-titles01 { line-height: 1.3; font-size: 46px; font-weight: 700; }
.v-titles01 > span { display: block; }

section#works-sec { padding: 140px 0; overflow: hidden; }
section#works-sec .btn01 { margin-top: 40px; }

.home section#works-sec { padding-bottom: 391px; }

.slider01, .slider02 { margin-bottom: 0 !important; }
.slider01 .slick-list, .slider02 .slick-list { overflow: visible; }
.slider01 .slick-track, .slider02 .slick-track { display: flex; flex-wrap: wrap; }
.slider01 article.blog-art01, .slider02 article.blog-art01 { height: auto !important; }
.slider01 article.works-art, .slider02 article.works-art { margin-right: 24px; opacity: 0; pointer-events: none; height: auto !important; }
.slider01 article.works-art.slick-active, .slider01 article.works-art.slick-active + article.works-art, .slider01 article.works-art.slick-active + article.works-art + article.works-art, .slider02 article.works-art.slick-active, .slider02 article.works-art.slick-active + article.works-art, .slider02 article.works-art.slick-active + article.works-art + article.works-art { opacity: 1; pointer-events: auto; }

article.works-art { width: 352px; }
article.works-art a { display: block; box-sizing: border-box; height: 100%; border: solid 1px #EEEEEE; text-decoration: none; background: #fff; }
article.works-art a .img { overflow: hidden; }
article.works-art a .img .in-img { padding-top: 68.57%; transition: 0.3s; }
article.works-art a .cont { padding: 10px 29px 29px; }
article.works-art a .cont .a-date { text-align: right; font-size: 14px; font-weight: 400; color: #8F8F8F; font-family: "robo"; margin-bottom: 10px; }
article.works-art a .cont .tit { font-weight: 400; width: 100%; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
article.works-art a .cont .infos.flex { margin-top: 16px; }
article.works-art a:hover .img .in-img { transform: scale(1.1); }

.infos.flex { width: calc(100% + 4px); margin: -4px 0 0 -4px; }
.infos.flex > div { margin: 4px 0 0 4px; line-height: 25px; min-height: 25px; font-size: 14px; font-weight: 500; }
.infos.flex > div.w-cate { background: #093182; color: #fff; padding: 0 10px; }

button.slick-arrow { opacity: 1; z-index: 2; transition: 0s; width: 50px; height: 50px; box-sizing: border-box; border: none; transition: 0.3s; top: -182px; transform: translateY(0); border-radius: 100%; border: solid 1px #093182; }

button.slick-prev.slick-arrow { background: url("../img/common/slide-arrow01.svg") no-repeat center #093182; left: auto; right: 147px; }

button.slick-next.slick-arrow { background: url("../img/common/slide-arrow02.svg") no-repeat center #093182; right: 0; }

button.slick-arrow:before { content: none; }

button.slick-prev.slick-arrow:hover, button.slick-prev.slick-arrow.slick-disabled { background-image: url("../img/common/slide-arrow01h.svg"); background-color: #fff; }

button.slick-next.slick-arrow:hover, button.slick-next.slick-arrow.slick-disabled { background-image: url("../img/common/slide-arrow02h.svg"); background-color: #fff; }

.slick-counter { width: 75px; height: 50px; font-size: 14px; color: #093182; position: absolute; right: 60px; top: -182px; display: flex; flex-wrap: wrap; }
.slick-counter span.current, .slick-counter span.total { width: 50%; text-align: center; box-sizing: border-box; }
.slick-counter span.current { padding-left: 10px; }
.slick-counter span.total { padding-top: 26px; padding-right: 10px; }
.slick-counter span.slash01 { width: 46px; height: 1px; background: #093182; transform: rotateZ(-45deg); position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }

.works-list01.flex { margin-top: 40px; }

section#blog-sec { overflow: hidden; }

section#proto-sec { padding: 1px 0 120px; background: #EAEFFA; }
section#proto-sec .bg-img01 { height: 526px; width: calc(100% - 420px); width: calc(50% + 550px); margin-top: -272px; margin-left: auto; background: url("../img/top/bg-img01.png") no-repeat left top; }
section#proto-sec .wrap { padding-top: 34px; display: flex; flex-wrap: wrap; }
section#proto-sec .v-titles01 { color: #093182; }
section#proto-sec .btn01 { margin-top: 40px; }
section#proto-sec .textBox { margin-top: 40px; }

.yello-bgs { margin-bottom: 20px; }
.yello-bgs > span { margin-right: 20px; background: #FFF000; font-size: 24px; font-weight: 700; line-height: 31px; color: #093182; }

.dot-tit01 { position: relative; font-weight: 700; margin-bottom: 14px; font-size: 18px; padding-left: 15px; color: #093182; }

.dot-tit01:before { content: ""; width: 6px; height: 6px; background: #093182; border-radius: 100%; position: absolute; left: 0; top: 12px; }

.proto-cont { position: relative; width: 880px; margin-left: auto; }

.hum01 { position: relative; margin-left: -49px; }
.hum01 .voice { top: -5px; left: 170px; position: absolute; }

div.check-list01.flex { position: relative; z-index: 2; margin-top: -10px; }

div.checkBox { width: 50%; height: 50px; display: flex; flex-wrap: wrap; margin-top: 2px; background: #fff; align-items: center; }
div.checkBox .ico-check { width: 50px; height: 50px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; background: #093182; }
div.checkBox .ico-check img { display: block; }
div.checkBox .cont { width: calc(100% - 50px); font-weight: 500; box-sizing: border-box; padding: 10px 20px; }

div.checkBox:first-child { margin-top: 0; }

div.checkBox:first-child, div.checkBox:nth-child(2), div.checkBox:nth-child(3) { width: 100%; }

section#range-sec { padding: 140px 0 492px; background: url("../img/top/bg02.jpg") no-repeat center top; background-size: cover; color: #fff; }

.range-list.flex > div.box { width: 50%; position: relative; box-sizing: border-box; border-bottom: solid 1px #426BBC; border-right: solid 1px #426BBC; padding: 40px; background: rgba(4, 32, 88, 0.8); }
.range-list.flex > div.box .num { width: 24px; height: 24px; display: flex; flex-wrap: wrap; background: #fff; justify-content: center; align-items: center; background: #fff; color: #093182; font-size: 12px; font-family: "robo"; font-weight: 500; box-sizing: border-box; padding-top: 3px; position: absolute; left: 0; top: 0; }
.range-list.flex > div.box .cont h3.tit { font-weight: 700; font-size: 22px; margin-bottom: 20px; }
.range-list.flex > div.box .cont p.bold { margin-bottom: 10px; }
.range-list.flex > div.box:nth-child(2n) { border-right: none; }
.range-list.flex > div.box.box05 { border-right: none; border-bottom: none; width: 100%; }
.range-list.flex > div.box.box01 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.range-list.flex > div.box.box01 .cont { width: 290px; }
.range-list.flex > div.box.box01 .img { width: 150px; }
.range-list.flex > div.box.box05 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.range-list.flex > div.box.box05 .cont { width: 630px; }
.range-list.flex > div.box.box05 .img { width: 360px; }

p.dot-p { position: relative; padding-left: 16px; }

p.dot-p:before { content: ""; position: absolute; left: 0; top: 10px; width: 4px; height: 4px; border-radius: 100%; background: #fff; }

.zenkoku { margin-bottom: 20px; line-height: 34px; font-size: 18px; }
.zenkoku > span { display: inline-block; border: solid 1px #fff; border-radius: 30px; padding: 0 19px; }

.bikou-text { margin-top: 12px; }
.bikou-text p { position: relative; padding-left: 16px; font-size: 14px; }
.bikou-text p:before { content: "※"; position: absolute; left: 0; top: 0; }

.seqBox { width: 1007px; margin: 60px auto 0; }
.seqBox h4.seq-tit { line-height: 40px; padding-left: 42px; background: url("../img/top/ico-safety.svg") no-repeat left top 3px; margin-bottom: 20px; font-weight: 700; font-size: 22px; }

section#eq-sec { margin-top: -372px; margin-bottom: -316px; z-index: 2; overflow: hidden; }
section#eq-sec .wrap { position: relative; z-index: 2; padding: 120px 0; }
section#eq-sec .wrap .btn01 { margin-top: 40px; }
section#eq-sec .wrap .img { position: absolute; top: 40px; right: -235px; }

section#eq-sec:before { content: ""; width: calc(50% + 464px); background: #fff; position: absolute; left: 0; top: 0; height: 100%; }

section#blog-sec { padding: 440px 0 170px; background: #EAEFFA; }
section#blog-sec .btn01 { margin-top: 40px; }

.slider02 button.slick-arrow { top: -90px; }
.slider02 .slick-counter { top: -90px; }
.slider02 article.blog-art01 { margin-right: 22px; opacity: 0; pointer-events: none; }
.slider02 article.blog-art01.slick-active, .slider02 article.blog-art01.slick-active + article.blog-art01, .slider02 article.blog-art01.slick-active + article.blog-art01 + article.blog-art01 { opacity: 1; pointer-events: auto; }

article.blog-art01 { width: 352px; }
article.blog-art01 a { display: block; box-sizing: border-box; height: 100%; border: solid 1px #EEEEEE; text-decoration: none; background: #fff; }
article.blog-art01 a .img { overflow: hidden; }
article.blog-art01 a .img .in-img { padding-top: 68.57%; transition: 0.3s; }
article.blog-art01 a .cont { padding: 30px 40px; }
article.blog-art01 a .cont .n-date { font-weight: 400; margin-left: 14px; }
article.blog-art01 a .cont .tit { font-weight: 400; width: 100%; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
article.blog-art01 a .cont .infos.flex { margin-bottom: 20px; }
article.blog-art01 a:hover .img .in-img { transform: scale(1.1); }

section#recruit-sec { margin-top: -50px; }
section#recruit-sec .wrap { display: flex; flex-wrap: wrap; flex-direction: row-reverse; z-index: 2; align-items: flex-start; }
section#recruit-sec .wrap .cont { width: 460px; box-sizing: border-box; padding: 80px 40px 120px 0; }
section#recruit-sec .wrap .cont .copy01 { margin-bottom: 60px; }
section#recruit-sec .wrap .img { width: 640px; }

section#recruit-sec:before { content: ""; width: 1100px; height: 100%; position: absolute; left: calc(50% - 800px); top: 0; background: #fff; }

/*02 
----------------------------------*/
div#umv { background: url("../img/main/umv.jpg") no-repeat center top; background-size: cover; box-sizing: border-box; padding-top: 88px; color: #fff; }
div#umv > .wrap { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; height: 224px; }

.mv-tit { font-size: 40px; font-weight: 700; }

section#p02Box01 { padding: 85px 0 120px; }

.p02-cont01-1.flex { justify-content: space-between; }
.p02-cont01-1.flex .cont { width: 720px; }
.p02-cont01-1.flex .img { width: 314px; }

.textBox > div { margin-bottom: 24px; }
.textBox > div:last-child { margin-bottom: 0; }

.p02-cont01-2 { margin-top: 60px; }
.p02-cont01-2 > .box { margin-bottom: 60px; }
.p02-cont01-2 > .box:last-child { margin-bottom: 0; }

.muki-fumuki.flex { margin-top: 20px; justify-content: space-between; }
.muki-fumuki.flex > div { border: solid 1px #D9D9D9; box-sizing: border-box; background: #fff; width: 542px; }
.muki-fumuki.flex > div h4 { width: calc(100% + 2px); margin: -1px 0 0 -1px; background: url("../img/p02/ico-maru.svg") no-repeat center left 30px #EAEFFA; padding: 10px 10px 10px 76px; font-size: 20px; box-sizing: border-box; }
.muki-fumuki.flex > div .cont { padding: 20px 30px; font-weight: 500; }
.muki-fumuki.flex > div.dBox.dBox02 h4 { background-image: url("../img/p02/ico-batsu-.svg"); }
.muki-fumuki.flex p.dot-p { margin-top: 10px; }
.muki-fumuki.flex p.dot-p .komoji { display: block; font-size: 14px; }
.muki-fumuki.flex p.dot-p:first-child { margin-top: 0; }
.muki-fumuki.flex p.dot-p:before { background: #0A0A0A; }

div.diffBox { width: 260px; text-align: center; box-sizing: border-box; padding: 30px 20px; margin-right: 20px; background: #EAEFFA; }
div.diffBox .ico { margin: 0 auto 10px; }
div.diffBox h4 { font-weight: 700; font-size: 20px; margin-bottom: 4px; }
div.diffBox .text { font-weight: 500; }

div.diffBox:nth-child(4n) { margin-right: 0; }

.TBL02 dl { box-sizing: border-box; border-right: solid 1px #093182; }
.TBL02 dl dt { background: #093182; width: 172px; box-sizing: border-box; padding: 30px 20px; color: #fff; font-weight: 700; border-bottom: solid 1px #6A84B7; }
.TBL02 dl dd { width: calc(100% - 172px); padding: 30px; border-bottom: solid 1px #D2DAE9; box-sizing: border-box; }
.TBL02 dl:first-child { border-top: solid 1px #093182; }
.TBL02 dl:last-child dt, .TBL02 dl:last-child dd { border-bottom: solid 1px #093182; }

.bg-gray { background: #EEEEEE; }

.hosokuBox { margin-top: 64px; position: relative; background: #EEEEEE; padding: 40px 30px; }

.hosokuBox:before { content: ""; background: url("../img/p02/tri01.svg") no-repeat center top; height: 43px; width: 54px; position: absolute; top: -42px; left: 135px; }

.black-tit { margin-bottom: 15px; }
.black-tit > span { display: inline-block; background: #0A0A0A; padding: 0 20px; line-height: 28px; font-size: 14px; font-weight: 700; text-align: center; color: #fff; border-radius: 20px; }

.hosoku-list > div { margin-bottom: 40px; justify-content: space-between; }
.hosoku-list > div .left { width: 606px; }
.hosoku-list > div .right { width: 400px; font-weight: 500; }
.hosoku-list > div .right .img { margin-bottom: 10px; }
.hosoku-list > div .right .bikou-text { width: 224px; margin-left: auto; font-weight: 500; margin-top: 0; }
.hosoku-list > div .right .bikou-text p { font-size: 16px; }
.hosoku-list > div:last-child { margin-bottom: 0; }

.sub01 { margin-bottom: 15px; font-weight: 700; color: #093182; font-size: 22px; padding-left: 16px; position: relative; }

.sub01:before { content: ""; width: 6px; height: 6px; background: #093182; border-radius: 100%; position: absolute; left: 0; top: 15px; }

section#p02Box02 { padding: 120px 0; background: url("../img/p02/bg01.jpg") no-repeat center; background-size: cover; color: #fff; }

.tit-head.flex { justify-content: space-between; margin-bottom: 60px; }
.tit-head.flex .titles01 { margin-bottom: 0; }
.tit-head.flex .text { width: 722px; line-height: 2; }

.samples.flex .box01 { width: 621px; margin-right: 40px; }
.samples.flex .box02 { position: relative; padding-top: 74px; }
.samples.flex .box02 .circle { position: absolute; left: 206px; top: -30px; width: 224px; }

section#strength-sec { padding-top: 1px; padding-bottom: 120px; background: #EAEFFA; margin-top: 263px; }
section#strength-sec .bg-img01 { height: 526px; width: calc(50% + 570px); background: url("../img/p02/bg-img01.png") no-repeat left top; background-size: cover; position: absolute; top: -263px; right: 0; }
section#strength-sec .wrap { padding-top: 383px; }

.strength-list > div.box { margin-bottom: 20px; background: #fff; box-sizing: border-box; display: flex; flex-wrap: wrap; }
.strength-list > div.box h3.en-box { width: 26px; background: #093182; color: #fff; box-sizing: border-box; padding-top: 30px; }
.strength-list > div.box h3.en-box span.robo { font-size: 14px; font-weight: 700; white-space: nowrap; transform: rotateZ(90deg); display: block; line-height: 1; }
.strength-list > div.box > .right { padding: 30px; display: flex; flex-wrap: wrap; justify-content: space-between; flex-direction: row-reverse; box-sizing: border-box; width: calc(100% - 26px); }
.strength-list > div.box > .right > .cont { width: 588px; }
.strength-list > div.box > .right > .img { width: 378px; }
.strength-list > div.box:last-child { margin-bottom: 0; }

.copy02 { font-size: 22px; font-weight: 700; margin-bottom: 20px; }

section#flow-sec { padding: 120px 0; }

div.flow-list02.flex { margin-top: -40px; }
div.flow-list02.flex > div.box { width: 328px; background: #EEEEEE; margin: 40px 58px 0 0; position: relative; }
div.flow-list02.flex > div.box .cont { padding: 20px 20px 30px; }
div.flow-list02.flex > div.box:after { content: ""; width: 0; height: 0; border-left: solid 14px #093182; border-top: solid 10px transparent; border-bottom: solid 10px transparent; position: absolute; left: calc(100% + 22px); top: 50%; transform: translateY(-50%); }
div.flow-list02.flex > div.box:nth-child(3n), div.flow-list02.flex > div.box:last-child { margin-right: 0; }
div.flow-list02.flex > div.box:nth-child(3n):after, div.flow-list02.flex > div.box:last-child:after { content: none; }

h3.num-tit { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: 15px; }
h3.num-tit .num { width: 24px; height: 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; color: #fff; border-radius: 100%; font-weight: 500; font-family: "robo"; font-size: 14px; background: #093182; margin-right: 6px; line-height: 25px; }
h3.num-tit .text { font-weight: 700; font-size: 20px; width: calc(100% - 30px); }

section#range-sec02 { padding: 120px 0; background: #EAEFFA; }
section#range-sec02 .range-list.flex > div.box { background: #fff; color: #0A0A0A; position: relative; }
section#range-sec02 .range-list.flex > div.box .num { color: #fff; background: #093182; }
section#range-sec02 .range-list.flex > div.box h3.tit { color: #093182; }
section#range-sec02 .range-list.flex > div.box .zenkoku > span { border-color: #093182; color: #093182; }
section#range-sec02 .range-list.flex > div.box.box05 .img .bikou-text { color: #093182; }
section#range-sec02 .range-list.flex > div.box.box02:before { content: ""; background: url("../img/p02/sokujitsu.svg") no-repeat; width: 187px; height: 117px; position: absolute; right: 12px; top: -27px; }

/*03 再めっき加工
----------------------------------*/
section#p03Box01 { padding: 90px 0 120px; }

.p03-cont01-1.flex { justify-content: space-between; }
.p03-cont01-1.flex .cont { width: 520px; }
.p03-cont01-1.flex .img { width: 521px; }

.p03-cont01-2 { position: relative; margin-top: -95px; }
.p03-cont01-2 .hum01 { margin-left: -23px; bottom: -30px; }
.p03-cont01-2 .hum01 .hum { width: 150px; }
.p03-cont01-2 .hum01 .hum img { width: 100%; max-width: none; }

.check-lists.flex { justify-content: space-between; margin-top: -20px; position: relative; z-index: 2; }
.check-lists.flex > div.box { background: #fff; border: solid 1px #D9D9D9; position: relative; margin-top: 20px; box-sizing: border-box; width: 542px; }
.check-lists.flex > div.box > h3 { background: url("../img/p03/ico01.svg") no-repeat left 20px center #EAEFFA; box-sizing: border-box; width: calc(100% + 2px); margin: -1px 0 0 -1px; padding: 15px 15px 15px 78px; }
.check-lists.flex > div.box .inner { padding: 20px 20px 30px; }
.check-lists.flex > div.box.box02 > h3 { background-image: url("../img/p03/ico02.svg"); }
.check-lists.flex > div.box.box03 > h3 { background-image: url("../img/p03/ico03.svg"); }
.check-lists.flex > div.box.box04 > h3 { background-image: url("../img/p03/ico04.svg"); }

ul.check-list02 > li { padding-left: 26px; background: url("../img/p03/ico-check.svg") no-repeat left top 4px; margin-top: 10px; }
ul.check-list02 > li:first-child { margin-top: 0; }

.solution { position: relative; margin-top: 92px; text-align: center; }
.solution > div { display: inline-block; padding: 10px; color: #fff; background: #093182; font-weight: 700; font-size: 34px; }

.solution:before { content: ""; background: url("../img/p03/arrow01.svg") no-repeat center top; width: 26px; height: 52px; margin: 0 auto; left: 0; right: 0; bottom: calc(100% + 20px); position: absolute; }

section#p03Box02 { padding: 120px 0; background: #EAEFFA; }
section#p03Box02 .tit-head.flex { align-items: flex-end; }
section#p03Box02 .tit-head.flex .text { width: 739px; }

.hikaku-list.flex { justify-content: space-between; }
.hikaku-list.flex > div.box { width: 542px; }
.hikaku-list.flex > div.box .hikakuBox { position: relative; background: #fff; padding: 25px 30px 30px; }
.hikaku-list.flex > div.box .hikakuBox > .img { padding-bottom: 35px; background: url("../img/p03/bfaf-text.svg") no-repeat center bottom; }
.hikaku-list.flex > div.box .bikou-text p { font-size: 16px; font-weight: 700; }

.sub02 { margin-bottom: 24px; font-weight: 700; font-size: 26px; color: #093182; position: relative; padding-left: 30px; margin-left: -30px; }

.sub02:before { content: ""; width: 4px; height: calc(100% + 5px); background: #093182; position: absolute; left: 0; top: -1px; }

section#p03Box03 { padding: 120px 0; background: url("../img/p03/bg01.jpg") no-repeat center top; background-size: cover; color: #fff; }
section#p03Box03 .titles01 { text-align: center; margin-bottom: 30px; }
section#p03Box03 .u-text01 { text-align: center; margin-bottom: 40px; }

.ph-contBox01 { background: rgba(4, 32, 88, 0.8); padding: 40px; margin-bottom: 20px; }

.ph-contBox02 { background: rgba(4, 32, 88, 0.8); padding: 40px; box-sizing: border-box; justify-content: space-between; }
.ph-contBox02 > .cont { width: 470px; }
.ph-contBox02 > .cont h3.tit { font-size: 26px; margin-bottom: 40px; }
.ph-contBox02 > .cont .text02 { font-weight: 500; font-size: 18px; margin-top: 20px; }
.ph-contBox02 > .cont .text02 span.bold { font-weight: 500; font-size: 28px; }
.ph-contBox02 > .img { width: 501px; }

.com-date01 .name { font-size: 20px; margin-bottom: 20px; }

.com-addres { font-weight: 500; padding-left: 26px; background: url("../img/p03/ico-pin.svg") no-repeat left center; margin-bottom: 20px; }

.border-boxs.flex { font-weight: 500; line-height: 30px; }
.border-boxs.flex .box01 { border: solid 1px #fff; margin-right: 20px; display: flex; flex-wrap: wrap; }
.border-boxs.flex .box01 .tit { color: #093182; background: #fff; padding: 0 10px; }
.border-boxs.flex .box01 .text { padding: 0 10px; }
.border-boxs.flex .box02 { border: solid 1px #fff; padding: 0 9px; }

.tit-head02.flex { margin-bottom: 28px; }
.tit-head02.flex h3.tit { font-weight: 700; font-size: 26px; }
.tit-head02.flex .text { padding-left: 30px; margin-left: 30px; border-left: solid 1px #fff; }

.askBox { margin-bottom: 20px; position: relative; padding: 30px 382px 30px 40px; background: rgba(255, 255, 255, 0.2); }
.askBox > h4 { font-weight: 700; font-size: 20px; margin-bottom: 20px; }
.askBox .hum { position: absolute; right: 34px; bottom: 0; width: 300px; height: 183px; background: url("../img/p03/sb01.svg") no-repeat left bottom 39px, url("../img/p03/hum01.png") no-repeat right bottom; background-size: auto, 128px; }

ul.check-list02.check-list03.flex { width: calc(100% + 20px); margin-left: -20px; margin-top: -10px; }
ul.check-list02.check-list03.flex > li { margin: 10px 0 0 20px; box-sizing: border-box; background-image: url("../img/p03/ico-check02.svg"); }
ul.check-list02.check-list03.flex > li .komoji { font-size: 14px; }
ul.check-list02.check-list03.flex > li:first-child, ul.check-list02.check-list03.flex > li:nth-child(2) { min-width: 155px; }

.method-list.flex { justify-content: space-between; }
.method-list.flex > div.cBox { padding: 30px 40px 30px; box-sizing: border-box; background: #fff; color: #0A0A0A; }
.method-list.flex > div.cBox .ico-tit { text-align: center; font-weight: 700; font-size: 24px; margin-bottom: 30px; line-height: 48px; color: #093182; }
.method-list.flex > div.cBox .ico-tit > span { display: inline-block; padding-left: 56px; background: url("../img/p03/ico-mail03.svg") no-repeat left center; }
.method-list.flex > div.cBox.cBox01 { width: 424px; }
.method-list.flex > div.cBox.cBox01 .contact-btn { width: 100%; }
.method-list.flex > div.cBox.cBox01 .contact-btn a { height: 100px; font-size: 24px; }
.method-list.flex > div.cBox.cBox02 { padding: 30px 30px 37px; width: 586px; }
.method-list.flex > div.cBox.cBox02 .ico-tit > span { background-image: url("../img/p03/ico-line02.svg"); }

.line-inner.flex { justify-content: space-between; }
.line-inner.flex .box { background: #EEEEEE; padding: 18px 20px; box-sizing: border-box; }
.line-inner.flex .box.box01 { margin-bottom: 10px; }
.line-inner.flex .left { width: 270px; }
.line-inner.flex .left .sub01 { margin-bottom: 10px; white-space: nowrap; }
.line-inner.flex .right { width: 245px; padding: 18px 20px 38px; box-sizing: border-box; background: #EEEEEE; }
.line-inner.flex .right .sub01 { margin-bottom: 30px; }
.line-inner.flex .sub01 { font-size: 18px; color: #0A0A0A; padding-left: 16px; }
.line-inner.flex .sub01:before { background: #0A0A0A; top: 11px; }
.line-inner.flex .qrBox { text-align: center; }
.line-inner.flex .line-btn { width: 218px; height: 62px; display: table; }
.line-inner.flex .line-btn a { display: table-cell; text-align: center; vertical-align: middle; background: #00BB00; text-decoration: none; font-weight: 700; font-size: 20px; color: #fff; border-radius: 4px; }
.line-inner.flex .line-btn a > span { display: inline-block; line-height: 48px; padding-left: 40px; background: url("../img/p03/ico-line03.svg") no-repeat center left; }
.line-inner.flex .line-btn a:hover { opacity: 0.7; }

.lens-box { width: 218px; height: 42px; display: table; }
.lens-box > span { display: table-cell; vertical-align: middle; border-radius: 4px; background: url("../img/p03/ico-lens.svg") no-repeat right 20px center, #fff; border: solid 1px; padding: 0 50px 0 20px; font-weight: 500; font-size: 18px; }

section#vice-sec { padding-top: 1px; padding-bottom: 120px; background: #042058; margin-top: 263px; }
section#vice-sec .bg-img01 { height: 526px; width: calc(50% + 570px); background: url("../img/p03/bg-img.png") no-repeat left top; background-size: cover; position: absolute; top: -263px; right: 0; }
section#vice-sec .wrap { padding-top: 383px; color: #fff; }

.voice-list.flex { margin-top: -40px; }
.voice-list.flex > div.box { width: 340px; margin: 40px 40px 0 0; }
.voice-list.flex > div.box .img { margin-bottom: 20px; }
.voice-list.flex > div.box .cont h3 { font-size: 20px; font-weight: 700; margin-bottom: 14px; }
.voice-list.flex > div.box:nth-child(3n) { margin-right: 0; }

/*04 試作・開発支援
----------------------------------*/
section#p04Box01 { padding: 90px 0 170px; }
section#p04Box01 .tit-head.flex { align-items: flex-end; }
section#p04Box01 .tit-head.flex .text { width: 370px; }
section#p04Box01 .solution { margin-top: 112px; }
section#p04Box01 .text02 { text-align: center; margin-top: 20px; }

.p04-cont01.flex { justify-content: space-between; align-items: flex-end; }
.p04-cont01.flex > .cont { width: 575px; }
.p04-cont01.flex > .cont div.checkBox { width: 100%; box-sizing: border-box; border: solid 1px #093182; min-height: 50px; }
.p04-cont01.flex > .cont div.checkBox .ico-check { height: 48px; }
.p04-cont01.flex > .img { width: 490px; }

section#p04Box02 { padding: 120px 0; background: #EAEFFA; }

section#p04Box03 { padding: 120px 0; }
section#p04Box03 h4.seq-tit { background-image: url("../img/p04/seq.svg"); color: #093182; }
section#p04Box03 .seqBox { width: 1100px; background: #EEEEEE; box-sizing: border-box; padding: 40px; }

.p04-flow > div.box.flex { align-items: center; padding-bottom: 80px; background: url("../img/p04/v-line.svg") no-repeat left 46px bottom 5px; justify-content: space-between; }
.p04-flow > div.box.flex .ico { width: 92x; }
.p04-flow > div.box.flex .cont { width: calc(100% - 122px); }
.p04-flow > div.box.flex .cont h3.tit { margin-bottom: 12px; font-size: 22px; }
.p04-flow > div.box.flex .cont h3.tit .num { font-weight: 700; font-size: 26px; }
.p04-flow > div.box.flex:last-child { background: none; padding-bottom: 0; }

/*05  個人のお客様へ
----------------------------------*/
section#p05Box01 { padding: 90px 0 120px; }
section#p05Box01 h2.titles01 { margin-bottom: 30px; }

.p03-cont01-2.p05-cont01 { margin-top: 40px; }
.p03-cont01-2.p05-cont01 .hum01 { left: 23px; bottom: -23px; }
.p03-cont01-2.p05-cont01 .hum01 .voice { top: 4px; left: 157px; }
.p03-cont01-2.p05-cont01 .check-lists.flex > div.box.box01 > h3 { background-image: url("../img/p05/ico01.svg"); }
.p03-cont01-2.p05-cont01 .check-lists.flex > div.box.box02 > h3 { background-image: url("../img/p05/ico02.svg"); }

section#p05Box02 { padding: 120px 0; background: #EAEFFA; }

.reason-list02 > div.box { box-sizing: border-box; background: #fff; padding: 30px; justify-content: space-between; margin-bottom: 20px; }
.reason-list02 > div.box .img { width: 378px; }
.reason-list02 > div.box .cont { width: 620px; }
.reason-list02 > div.box .cont .titles01 { margin-bottom: 20px; }
.reason-list02 > div.box .cont .titles01 .jp { font-size: 32px; margin-top: 10px; }
.reason-list02 > div.box:nth-child(2n) { flex-direction: row-reverse; }
.reason-list02 > div.box:last-child { margin-bottom: 0; }

section#p05Box03 { padding: 120px 0; }

.ex-list02.flex { margin-top: -40px; justify-content: space-between; }
.ex-list02.flex .exBox { width: 532px; background: #EEEEEE; box-sizing: border-box; padding: 30px 30px 40px; margin-top: 40px; }
.ex-list02.flex .exBox .img { margin-bottom: 20px; }
.ex-list02.flex .exBox .cont dl.flex { margin-bottom: 10px; }
.ex-list02.flex .exBox .cont dl.flex dt { font-weight: 700; color: #093182; }
.ex-list02.flex .exBox .cont dl.flex:last-child { margin-bottom: 0; }

.ex-copy { font-size: 20px; font-weight: 700; margin-bottom: 20px; }

/*06 選ばれる理由
----------------------------------*/
section#p06Box01 { padding: 90px 0 120px; }
section#p06Box01 .titles01 { margin-bottom: 70px; }
section#p06Box01 .titles01 .jp .medi { font-size: 30px; }

.p06-reasons.top-reasonBox.flex > div.box { padding-top: 30px; }
.p06-reasons.top-reasonBox.flex > div.box .ico { width: auto; height: auto; margin-bottom: 6px; }
.p06-reasons.top-reasonBox.flex > div.box .tit { color: #093182; margin-bottom: 22px; }
.p06-reasons.top-reasonBox.flex .time-set.flex div.left:before { border-left-color: #0A0A0A; }
.p06-reasons.top-reasonBox.flex .time-set.flex > div .t-tit > span { border-color: #0A0A0A; }
.p06-reasons.top-reasonBox.flex .time-set.flex div.right .t-tit > span { background: #0A0A0A; color: #fff; }

div#p06Box02 { padding: 120px 0; background: #EAEFFA; }

section.reason-sec { position: relative; background: #FFFFFF; margin-bottom: 30px; }
section.reason-sec .r-num { width: 90px; height: 90px; color: #fff; background: #093182; font-family: "robo"; text-align: center; line-height: 1; box-sizing: border-box; padding-top: 15px; position: absolute; left: 0; top: 0; }
section.reason-sec .r-num span.line01 { font-weight: 700; font-size: 14px; }
section.reason-sec .r-num span.line02 { font-size: 48px; font-weight: 700; }
section.reason-sec h2.r-tit01 { height: 90px; border-bottom: solid 1px #093182; padding-left: 120px; box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; font-weight: 700; font-size: 32px; color: #093182; }
section.reason-sec .inner.flex { padding: 30px; justify-content: space-between; flex-direction: row-reverse; box-sizing: border-box; }
section.reason-sec .inner.flex .img { width: 378px; }
section.reason-sec .inner.flex .cont { width: 622px; }

section.reason-sec:last-child { margin-bottom: 0; }

.r-grayBox { margin-top: 20px; padding: 20px; background: #EEEEEE; position: relative; }
.r-grayBox p.ho-text { position: absolute; right: 20px; bottom: 20px; }

.r-grayBox + .r-grayBox { margin-top: 10px; }

ul.check-list02.check-list04 { display: flex; flex-wrap: wrap; margin-top: -6px; }
ul.check-list02.check-list04 > li { margin: 6px 30px 0 0; min-width: 240px; box-sizing: border-box; background-image: url("../img/p06/ico-check.svg"); }
ul.check-list02.check-list04 > li:nth-child(2n) { margin-right: 0; }

ul.dot-list03.flex { margin-top: -6px; }
ul.dot-list03.flex > li { position: relative; padding-left: 15px; white-space: nowrap; width: 240px; margin-top: 6px; box-sizing: border-box; }
ul.dot-list03.flex > li:nth-child(2n) { width: calc(100% - 240px); }
ul.dot-list03.flex > li:before { content: "・"; position: absolute; left: 0; top: 0; }

dl.r-datas.flex { margin-bottom: 4px; line-height: 25px; align-items: center; }
dl.r-datas.flex dt { min-width: 84px; padding: 0 10px; background: #fff; text-align: center; font-weight: 700; color: #093182; border: solid 1px; border-radius: 4px; margin-right: 6px; box-sizing: border-box; }

dl.r-datas.flex:last-child { margin-bottom: 0; }

.r-grayBox.rg02 dl.r-datas.flex dt { color: #D50000; min-width: 135px; }

.r-copy { margin-bottom: 20px; font-size: 24px; font-weight: 700; color: #093182; }

span.yellow-bg { background: #FFF000; }

/*07 会社案内
----------------------------------*/
section#p07Box01 { padding: 90px 0 120px; }
section#p07Box01 .wrap { min-height: 340px; padding-right: 398px; box-sizing: border-box; }
section#p07Box01 .wrap .imgs { position: absolute; right: 0; top: 0; }
section#p07Box01 .wrap .imgs .names { text-align: right; margin-top: 10px; }
section#p07Box01 .wrap .imgs .names .line01 { margin-right: 15px; }

section#p07Box02 { padding: 120px 0 510px; background: #EAEFFA; }
section#p07Box02 .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
section#p07Box02 .wrap .TBL03 { width: 950px; }

.titles01 span.jp.v-ver { margin-top: 20px; }
.titles01 span.jp.v-ver > span { display: block; line-height: 1.2; }

.TBL03 th, .TBL03 td { box-sizing: border-box; vertical-align: top; line-height: 25px; padding: 40px 0; }
.TBL03 th { color: #093182; width: 200px; font-size: 18px; font-weight: 700; border-bottom: solid 1px #093182; }
.TBL03 td { border-bottom: solid 1px #B0B0B0; }
.TBL03 tr:first-child th, .TBL03 tr:first-child td { padding-top: 0; }
.TBL03 tr:last-child th, .TBL03 tr:last-child td { padding-bottom: 0; border-bottom: none; }

section#p07Box03 { padding: 1px 0 120px; }
section#p07Box03 .bg-img { height: 526px; width: calc(100% - 420px); width: calc(50% + 550px); margin-top: -286px; margin-left: auto; background: url("../img/p07/bg-img01.png") no-repeat left top; }
section#p07Box03 .wrap { padding-top: 100px; display: flex; flex-wrap: wrap; justify-content: space-between; }
section#p07Box03 .history-list { width: 950px; }

.historyBox { display: flex; flex-wrap: wrap; width: 100%; padding-bottom: 54px; position: relative; box-sizing: border-box; padding-left: 40px; align-items: flex-start; }
.historyBox .age { width: 295px; display: flex; flex-wrap: wrap; color: #093182; font-weight: 700; align-items: flex-end; position: relative; top: -10px; }
.historyBox .age .line01 { font-size: 30px; width: 94px; margin-right: 20px; }
.historyBox .age .line01 .nen { font-size: 18px; margin-left: 4px; }
.historyBox .age .line02 { padding-bottom: 5px; }
.historyBox .cont { width: calc(100% - 295px); padding-top: 6px; }

.historyBox:last-child { padding-bottom: 0; }

.historyBox:before { content: ""; width: 1px; height: 100%; left: 10px; top: 5px; background: #B0B0B0; position: absolute; }

.historyBox:last-child:before { content: none; }

.historyBox:after { content: ""; width: 12px; height: 12px; border: solid 4px #093182; border-radius: 100%; position: absolute; z-index: 2; left: 0; top: 5px; background: #fff; }

/*08 採用情報
----------------------------------*/
section#p08Box01 { padding: 90px 0 1px; }
section#p08Box01 .wrap { box-sizing: border-box; padding-bottom: 120px; padding-right: 435px; min-height: 418px; }
section#p08Box01 .wrap .imgs { position: absolute; z-index: 2; width: 398px; right: 0; top: 19px; }
section#p08Box01 .wrap .imgs .img02 { position: absolute; right: -65px; bottom: -37px; z-index: 2; }

section#p08Box02 { background: #EAEFFA; padding: 120px 0; }

.tri-list01.flex > div.box { width: 340px; margin-right: 40px; position: relative; }
.tri-list01.flex > div.box .num-wrap.robo { text-align: center; position: relative; z-index: 2; margin-bottom: -12px; line-height: 24px; }
.tri-list01.flex > div.box .num-wrap.robo > span { display: inline-block; padding: 0 10px; border-radius: 15px; background: #093182; font-size: 14px; color: #fff; font-weight: 700; }
.tri-list01.flex > div.box > .img { margin-bottom: 15px; }
.tri-list01.flex > div.box > h3.tit { text-align: center; margin-bottom: 10px; font-weight: 700; font-size: 26px; }
.tri-list01.flex > div.box:nth-child(3n) { margin-right: 0; }

section#p08Box03 { padding: 120px 0; background: #042058; }

article.interview-art.flex { margin-bottom: 40px; box-sizing: border-box; padding: 40px 50px 40px 55px; justify-content: space-between; background: #fff; }
article.interview-art.flex .left { width: 175px; text-align: center; }
article.interview-art.flex .left .int-data { margin-top: 10px; font-weight: 700; color: #093182; }
article.interview-art.flex .left .int-data > span { display: inline-block; }
article.interview-art.flex .left .int-data > span:before { content: "/"; margin: 0 5px; }
article.interview-art.flex .left .int-data > span:first-child:before { content: none; }
article.interview-art.flex .right { width: 768px; }
article.interview-art.flex .right h3.tit { font-weight: 700; font-size: 28px; border-bottom: solid 2px #D4D4D4; position: relative; padding-bottom: 16px; margin-bottom: 18px; }
article.interview-art.flex .right h3.tit:before { content: ""; width: 46px; height: 2px; background: #093182; position: absolute; left: 0; bottom: -2px; }

article.interview-art.flex:last-child { margin-bottom: 0; }

section#p08Box04 { padding: 120px 0 370px; }

article.rec-art { margin-bottom: 60px; border: solid 1px #093182; }
article.rec-art .opcl-cont > div { padding: 40px 40px 60px; }
article.rec-art .opcl-cont > div .btn01 { margin: 60px auto 0; }

article.rec-art:last-child { margin-bottom: 0; }

.opcl { transition: 0.3s; cursor: pointer; }

h3.rec-tit { position: relative; background: #093182; color: #fff; font-weight: 700; font-size: 24px; padding: 14px 80px 14px 40px; }
h3.rec-tit .opcl-ico { width: 30px; height: 30px; position: absolute; right: 40px; top: 50%; transform: translateY(-50%); z-index: 2; transition: 0.3s; }
h3.rec-tit .opcl-ico:before { content: ""; width: 100%; height: 1px; background: #fff; position: absolute; left: 0; top: calc(50%); transition: 0.3s; }
h3.rec-tit .opcl-ico:after { content: ""; width: 1px; height: 100%; background: #fff; position: absolute; left: calc(50%); top: 0; transition: 0.3s; }

.opcl.on .opcl-ico:after { opacity: 0; }

.opcl-cont { display: none; }

.TBL01 th, .TBL01 td { box-sizing: border-box; padding: 24px 0; line-height: 25px; vertical-align: top; }
.TBL01 th { font-weight: 700; color: #093182; width: 135px; }
.TBL01 tr { border-bottom: solid 1px #C1D0F0; }
.TBL01 tr:last-child { border-bottom: none; }
.TBL01 tr:last-child th, .TBL01 tr:last-child td { padding-bottom: 0; }
.TBL01 tr:first-child th, .TBL01 tr:first-child td { padding-top: 0; }

section#p08Box05 { padding: 1px 0 120px; background: #EAEFFA; }
section#p08Box05 .bg-img { height: 526px; width: calc(100% - 420px); width: calc(50% + 550px); margin-top: -286px; margin-left: auto; background: url("../img/p08/bg-img.png") no-repeat left top; }
section#p08Box05 .wrap { padding-top: 120px; }

.rec-flows.flex > div.box { width: 322px; position: relative; box-sizing: border-box; background: #fff; margin-right: 67px; padding: 40px 30px; }
.rec-flows.flex > div.box .num-text.robo { color: #093182; transform: rotateZ(90deg); position: absolute; z-index: 2; left: 38px; top: 20px; transform-origin: left top; font-size: 20px; font-weight: 700; }
.rec-flows.flex > div.box .ico { text-align: center; margin-bottom: 20px; }
.rec-flows.flex > div.box h3.tit { text-align: center; margin-bottom: 10px; color: #093182; font-weight: 700; font-size: 24px; }
.rec-flows.flex > div.box:after { content: ""; width: 0; height: 0; border-left: solid 14px #093182; border-top: solid 10px transparent; border-bottom: solid 10px transparent; position: absolute; left: calc(100% + 27px); top: 50%; transform: translateY(-50%); }
.rec-flows.flex > div.box:nth-child(3n) { margin-right: 0; }
.rec-flows.flex > div.box:nth-child(3n):after, .rec-flows.flex > div.box:last-child:after { content: none; }

/*09 お問い合わせ
----------------------------------*/
section#p09Box01 { padding: 90px 0 120px; }

.p09-cont01.flex { justify-content: space-between; margin-bottom: 60px; }
.p09-cont01.flex .cont { width: 610px; }
.p09-cont01.flex .img { width: 380px; }

.ls-list { width: 566px; }

div.lsBox { margin-bottom: 20px; display: flex; flex-wrap: wrap; border: solid 1px #093182; margin-top: 20px; box-sizing: border-box; border: solid 1px #093182; font-weight: 700; }
div.lsBox .left { width: 258px; box-sizing: border-box; background: #093182; color: #fff; padding-left: 20px; height: 44px; display: flex; flex-wrap: wrap; align-items: center; position: relative; }
div.lsBox .left:before { content: ""; width: 0; height: 0; border-left: solid 12px #093182; border-top: solid 22px transparent; border-bottom: solid 22px transparent; position: absolute; top: 0; left: 100%; }
div.lsBox .right { width: calc(100% - 258px); box-sizing: border-box; padding-left: 32px; height: 44px; display: flex; flex-wrap: wrap; align-items: center; position: relative; }

div.lsBox:last-child { margin-bottom: 0; }

.tel-fax.flex { margin-top: 60px; justify-content: space-between; }
.tel-fax.flex > div { width: 530px; box-sizing: border-box; background: #EAEFFA; padding: 40px 40px 55px; }
.tel-fax.flex > div > h3 { text-align: center; font-weight: 700; font-size: 26px; color: #093182; padding-top: 88px; background: url("../img/p09/ico-tel.svg") no-repeat center top; }
.tel-fax.flex > div .tel-set { width: 320px; margin: 0 auto; }
.tel-fax.flex > div .tel-set .tel-num a { font-weight: 500; color: #093182; font-size: 50px; line-height: 1; white-space: nowrap; }
.tel-fax.flex > div .tel-set .tel-num a .komoji { display: none; }
.tel-fax.flex > div .tel-set .bh { text-align: right; font-size: 16px; }
.tel-fax.flex > div.box02 h3 { background-image: url("../img/p09/ico-fax.svg"); }
.tel-fax.flex > div.box02 .fax-num { text-align: center; font-family: "robo"; font-weight: 500; color: #093182; font-size: 50px; line-height: 1; }

div#p09Box03 { padding: 120px 0; background: #EAEFFA; }

.contactBox { background: #fff; padding: 60px 105px; }
.contactBox > h2.tit { text-align: center; font-weight: 700; font-size: 26px; color: #093182; padding-top: 88px; background: url("../img/p09/ico-mail.svg") no-repeat center top; margin-bottom: 40px; }

.contact-text.bikou-text { width: 800px; margin: 0 auto; }
.contact-text.bikou-text p { font-weight: 500; font-size: 16px; }

/*フォーム*/
.file-bikou { font-size: 14px; }

ul.contact-state { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 40px auto 10px; width: 850px; }

ul.contact-state > li { display: table; width: 272px; height: 61px; position: relative; }

ul.contact-state > li > span { display: table-cell; text-align: center; vertical-align: middle; color: #093182; font-size: 18px; font-weight: 500; }

ul.contact-state > li.state01 { margin-left: 0; }

ul.contact-state > li.state01 > span { background: url("../img/p09/state02.svg") no-repeat left center; color: #fff; }

ul.contact-state > li > span span.num { margin-right: 8px; font-size: 20px; }

ul.contact-state > li.state02 > span { background: url("../img/p09/state01.svg") no-repeat left center; }

ul.contact-state.contact-state02 { display: flex; flex-wrap: wrap; justify-content: space-between; }

ul.contact-state.contact-state02 > li.state02 > span { background-image: url("../img/p09/state02.svg"); color: #fff; }

ul.contact-state > li.state03 > span { border: solid 1px #093182; }

span.num-circle { margin-right: 8px; font-size: 20px; }

a.green { text-decoration: underline; color: #093182; }

a.green:hover { text-decoration: none; }

.contactTBL th, .contactTBL td { display: block; box-sizing: border-box; font-size: 16px; padding: 30px 0; color: #000000; line-height: 1.66; }
.contactTBL th { padding-bottom: 15px; }
.contactTBL td { padding-top: 0; }
.contactTBL .wpcf7-list-item { margin-left: 0; display: block; margin-bottom: 10px; margin-right: 25px; }
.contactTBL input[type="checkbox"], .contactTBL input[type="radio"] { transform-origin: left center; transform: scale(1.5); margin-right: 8px; }

span.hissu { display: inline-block; color: #fff; padding: 0px 7px; background: #D50000; margin-right: 8px; box-sizing: border-box; font-size: 14px; font-weight: 700; border-radius: 5px; }

span.nini { display: inline-block; padding: 0px 6px; margin-right: 8px; font-size: 14px; font-weight: 700; border-radius: 5px; background: #E6E6E6; }

input.wpcf7-number, input.wpcf7-date, input.wpcf7-text { box-sizing: border-box; height: 40px; border: solid 1px #D4D4D4; padding: 5px 20px; font-size: 16px; background: #fff; width: 100%; }

input.wpcf7-date { padding: 5px 10px; }

select.wpcf7-select { box-sizing: border-box; height: 40px; border: solid 1px #D4D4D4; padding: 5px 30px 0 20px; font-size: 16px; background: #fff; width: auto; background: url(../img/p11/select-arrow.svg) no-repeat center right 10px #fff; width: auto; -webkit-appearance: none; appearance: none; }

select { background: #fff; border-radius: 0; }

textarea.wpcf7-textarea { box-sizing: border-box; height: 160px; border: solid 1px #D4D4D4; padding: 5px 10px; font-size: 16px; background: #fff; width: 100%; }

input#com-name, input#busho { width: 400px; }

.okomari-list span.wpcf7-list-item { display: block; }

.radio-list span.wpcf7-list-item { display: block; }

.pop-btn.opcl-btn { margin-bottom: 0; width: 320px; height: 60px; border-radius: 30px; padding: 14px 20px; }
.pop-btn.opcl-btn .inner { justify-content: center; }
.pop-btn.opcl-btn .inner .text { width: calc(100% - 32px); font-size: 16px; padding-left: 32px; box-sizing: border-box; text-align: center; }
.pop-btn.opcl-btn .inner .plus:after { content: ""; width: 15px; height: 1px; background: #fff; position: absolute; left: 0; right: 0; top: 50%; margin: 0 auto; opacity: 0; }

.pop-btn.opcl-btn.on:hover .plus:after { background: #004798; }

.pop-btn.opcl-btn.on { margin-bottom: 40px; }
.pop-btn.opcl-btn.on .plus img { opacity: 0; }
.pop-btn.opcl-btn.on .plus:after { opacity: 1; }

.opcl-wrap { display: none; }

div.opcl-inBox { background: #F8F8F8; padding: 1px 40px 40px; }

.hyo-de { margin-top: 10px; }
.hyo-de .tit { margin-bottom: 5px; }

.contactTBL .select-con .wpcf7-list-item { display: block; margin-right: 10px !important; }

.select-con { margin-bottom: 15px; }

input#your-name, input#your-kana { width: 400px; }

.cours-area { margin-top: 5px; }

input.wpcf7-text.tel01, input#zip01 { width: 180px; }

select#pref3 { width: auto; }

span.form-bikou { display: block; }

ul.address-list > li { margin-bottom: 30px; }
ul.address-list > li:last-child { margin-bottom: 0; }
ul.address-list .th { font-size: 14px; margin-bottom: 5px; }

.contactArea .codedropz-upload-container { padding: 0; }

.contactArea .codedropz-upload-handler { border: solid 1px #D4D4D4; border-radius: 0; background: url("../img/p09/ico-file.svg") no-repeat center top 56px #fff; padding: 84px 30px 56px; }

.contactArea .codedropz-upload-inner { color: #1C1C1C; line-height: 1.5; font-size: 16px; font-weight: 500; }

.contactArea .codedropz-upload-inner h3 { font-size: 16px; font-weight: 500; margin: 0; }

a.cd-upload-btn { width: 140px; height: 40px; display: inline-block; line-height: 35px; background: #E3E3E3; border: solid 1px #707070; border-radius: 0; padding-top: 3px; font-size: 16px; margin-top: 8px; color: #000000; }

.contact-submit.flex { margin-top: 60px; justify-content: center; flex-direction: row-reverse; position: relative; }

.contact-submit.flex > p { width: 100%; text-align: center; margin-top: 30px; }

.inb { display: inline-block; }

.form-btn { width: 300px; position: relative; }

.form-btn input[type="submit"], .form-btn input[type="button"] { transition: 0.3s; border: solid 1px #D50000; color: #fff; width: 100%; height: 70px; font-size: 16px; font-weight: 700; position: relative; z-index: 3; background: url("../img/p09/btn-bg01.svg") no-repeat center right 16px #D50000; padding-left: 40px; text-align: left; }

.form-btn.form-btn02 { margin-right: 10px; }

.form-btn.form-btn02 input[type="submit"], .form-btn.form-btn02 input[type="button"] { background-color: #fff; color: #D50000; text-align: right; padding-right: 40px; background-image: url("../img/p09/btn-bg02.svg"); background-position: left 16px center; }

.form-btn input { transition: 0.3s; cursor: pointer; }

.form-btn input:hover { background-image: url("../img/p09/btn-bg01h.svg"); color: #E60012; background-color: #fff; }

.form-btn.form-btn02 input:hover { opacity: 0.7; }

span.zip-mark { margin-right: 10px; font-size: 14px; }

span.zip-bikou { margin-left: 15px; font-size: 13px; }

.zip_list > div { margin-bottom: 10px; }
.zip_list > div:last-child { margin-bottom: 0; }
.zip_list .zip00.zip02 > div { margin-bottom: 10px; }
.zip_list .zip00.zip02 > div:last-child { margin-bottom: 0; }

.wpcf7-spinner { position: absolute !important; top: -10px !important; }

/*入力内容確認時にフォーム上部へスクロールするがナビゲーションが追従の場合フォームとナビゲーションが重なるのでそのためのオフセット設定*/
form.wpcf7-form { padding-top: 120px; margin-top: -120px; }

.wpcf7c-conf { background-color: #e8f0fe !important; }

input:-webkit-autofill, input:-internal-autofill-selected { -webkit-appearance: none; -webkit-box-shadow: 0 0 0px 1000px #e8f0fe inset !important; box-shadow: 0 0 0px 1000px #e8f0fe inset !important; }

::placeholder { font-size: 16px; color: #B2B2B2; line-height: 1.5; }

/*確認画面*/
.contactArea.che { background: #eee; padding: 30px; }
.contactArea.che .pop-btn.opcl-btn.on { pointer-events: none; }
.contactArea.che .opcl-wrap { display: block !important; }
.contactArea.che div.opcl-inBox { padding-top: 20px; }

.contactArea.che .contactTBL tr { border-bottom: solid 1px #000; }

.contactArea.che .contactTBL th, .contactArea.che .contactTBL td { padding-top: 5px; padding-bottom: 5px; vertical-align: middle; }

.contactArea.che .dnd-upload-status .dnd-upload-details .remove-file, .contactArea.che .codedropz-upload-handler, .contactArea.che .bikou-text01, .contactArea.che span.dnd-progress-bar, .contactArea.che input[type=checkbox] { display: none; }

.contactArea.che input[type=checkbox]:checked { display: inline-block; }

.contactArea.che input[type=checkbox] ~ span.wpcf7-list-item-label { display: none; }

.contactArea.che input[type=checkbox]:checked ~ span.wpcf7-list-item-label { display: inline-block; font-weight: 700; }

.contactArea.che input[type=radio] { display: none; }

.contactArea.che input[type=radio]:checked { display: inline-block; }

.contactArea.che input[type=radio] ~ span.wpcf7-list-item-label { display: none; }

.contactArea.che input[type=radio]:checked ~ span.wpcf7-list-item-label { display: inline-block; font-weight: 700; }

.contactArea.che textarea.wpcf7-textarea, .contactArea.che input.wpcf7-number, .contactArea.che input.wpcf7-date, .contactArea.che input.wpcf7-text, .contactArea.che select { font-weight: 700; }

/*10 設備紹介
----------------------------------*/
div#contents.bg01 { background: #EAEFFA; }

div#p10Box01 { padding: 90px 0 120px; }

.eq-list.flex { margin-top: 20px; justify-content: space-between; }

article.ea-art { background: #fff; box-sizing: border-box; padding: 30px 30px 40px; width: 540px; margin-top: 40px; }
article.ea-art .img { margin-bottom: 20px; }
article.ea-art .img .in-img { padding-top: 66.66%; }
article.ea-art h3.tit { color: #093182; margin-bottom: 20px; font-weight: 700; font-size: 20px; }

.TBL05 th, .TBL05 td { box-sizing: border-box; line-height: 25px; padding: 10px 5px 10px 15px; }
.TBL05 th { color: #fff; font-weight: 700; background: #093182; width: 128px; border-bottom: solid 1px #5776B4; }
.TBL05 td { border-top: solid 1px #EEEEEE; }
.TBL05 tr:last-child th { border-color: #5776B4; }
.TBL05 tr:last-child td { border-bottom: solid 1px #EEEEEE; }

div#p10Box02 { padding: 120px 0; background: #fff; }

.TBL06 .col01 { width: 312px; }
.TBL06 .col02 { width: 374px; }
.TBL06 .col03 { width: 282px; }
.TBL06 .col04 { width: 132px; }
.TBL06 thead th { background: #093182; color: #fff; font-weight: 700; border-right: solid 1px #5776B4; }
.TBL06 thead th:last-child { border-right: solid 1px #093182; }
.TBL06 td { background: #fff; }
.TBL06 tr:nth-child(2n) td { background: #FAFAFA; }
.TBL06 th, .TBL06 td { box-sizing: border-box; padding: 20px; box-sizing: border-box; }
.TBL06 td { border-left: solid 1px #EEEEEE; border-right: solid 1px #EEEEEE; }
.TBL06 tr:last-child td { border-bottom: solid 1px #EEEEEE; }

/*11 実績紹介
----------------------------------*/
div#p11Box01 { padding: 90px 0 120px; }

.works-list-all.flex { margin-top: -40px; justify-content: space-between; width: 742px; }
.works-list-all.flex article.works-art { margin-top: 40px; }

.w-data { margin-top: 20px; }
.w-data dl { margin-bottom: 8px; }
.w-data dl dt { width: 68px; color: #093182; font-weight: 700; }
.w-data dl dd { width: calc(100% - 68px); }
.w-data dl:last-child { margin-bottom: 0; }

/*詳細*/
div#p11sBox { padding: 90px 0 120px; }

div#two-cont { display: flex; flex-wrap: wrap; justify-content: space-between; }

div#two-main { width: 760px; }

div#two-side { width: 280px; }

article.singleBox01 { background: #fff; padding: 40px 30px; }
article.singleBox01 .n-date { margin-left: auto; }
article.singleBox01 .TBL07 { margin-top: 40px; }

h1.works-tit01 { margin-top: 10px; font-size: 22px; line-height: 1.5; margin-bottom: 20px; }

.TBL07 th, .TBL07 td { box-sizing: border-box; padding: 20px 0; border-bottom: solid 1px #C1D0F0; }
.TBL07 tr:first-child th, .TBL07 tr:first-child td { padding-top: 0; }
.TBL07 th { font-weight: 700; color: #093182; width: 68px; vertical-align: top; }

.works-detaile { margin-top: 40px; }

.sub03 { margin-bottom: 10px; color: #093182; font-weight: 700; }
.sub03 > span { display: inline-block; position: relative; padding: 0 12px; }
.sub03 > span:before { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #093182; position: absolute; left: 0; top: 11px; }
.sub03 > span:after { content: ""; width: 4px; height: 4px; border-radius: 100%; background: #093182; position: absolute; right: 0; top: 11px; }

.bfaf-list { margin-top: 60px; }
.bfaf-list > .bfafBox { margin-bottom: 40px; }
.bfaf-list > .bfafBox .tit { font-weight: 700; color: #093182; margin-bottom: 20px; font-size: 22px; }
.bfaf-list > .bfafBox:last-child { margin-bottom: 0; }

.bfaf-imgs.flex { justify-content: center; margin-bottom: 20px; }
.bfaf-imgs.flex > div { width: 330px; position: relative; margin-right: 40px; }
.bfaf-imgs.flex > div .in-img { padding-top: 67.57%; }
.bfaf-imgs.flex > div:last-child { margin-right: 0; }

.bfaf-imgs.afbf-t.flex > div { padding-bottom: 39px; }
.bfaf-imgs.afbf-t.flex div.img.bf:after { content: ""; width: 0; height: 0; border-left: solid 10px #093182; border-top: solid 7px transparent; border-bottom: solid 7px transparent; position: absolute; left: calc(100% + 15px); top: 105px; }
.bfaf-imgs.afbf-t.flex .img.bf { background: url("../img/p11/i-before.svg") no-repeat center bottom; }
.bfaf-imgs.afbf-t.flex .img.af { background: url("../img/p11/i-after.svg") no-repeat center bottom; }

.witerBox { margin-top: 60px; background: #EEEEEE; position: relative; padding: 70px 40px 40px; }
.witerBox > .cap { position: absolute; left: 0; top: 0; color: #fff; background: #0A0A0A; line-height: 39px; width: 184px; text-align: center; font-weight: 700; }
.witerBox .inner { position: relative; padding-left: 148px; }
.witerBox .inner .img { width: 110px; position: absolute; left: 0; top: 0; }
.witerBox .inner .img .in-img { padding-top: 100%; border-radius: 100%; }
.witerBox .inner > h2 { font-weight: 700; font-size: 22px; }
.witerBox .inner .job-name { color: #093182; font-weight: 500; }
.witerBox .inner .wr-detail { margin-top: 10px; }
.witerBox .inner .writer_lic { margin-top: 15px; line-height: 25px; display: flex; flex-wrap: wrap; align-items: flex-start; }
.witerBox .inner .writer_lic span.cap { margin-right: 10px; display: inline-block; box-sizing: border-box; width: 90px; border-radius: 30px; font-size: 14px; background: #C9C9C9; text-align: center; }
.witerBox .inner .writer_lic > span.inb { width: calc(100% - 100px); }

div.photo-gallery { display: flex; flex-wrap: wrap; align-items: flex-start; }

div.gallery-main { width: 494px; margin-right: 12px; }
div.gallery-main button.slick-arrow { width: 18px; height: 40px; border-radius: 0; top: 170px; transform: translateY(-50%); }
div.gallery-main button.slick-prev.slick-arrow { background: url("../img/p11/slide-arrow01.svg") no-repeat center #093182; left: 0; }
div.gallery-main button.slick-next.slick-arrow { background: url("../img/p11/slide-arrow02.svg") no-repeat center #093182; right: 0; }
div.gallery-main button.slick-prev.slick-arrow:hover { opacity: 0.7; }
div.gallery-main button.slick-next.slick-arrow:hover { opacity: 0.7; }

div.gallery-thumbs { width: 194px; margin-top: -6px; }
div.gallery-thumbs .slick-track { width: 100% !important; transform: none !important; }

.gallery-img { width: 100%; }
.gallery-img a { display: block; position: relative; text-decoration: none; }
.gallery-img a:after { content: ""; position: absolute; right: 0; bottom: 0; z-index: 2; background: url("../img/p05/ico-lens.svg") no-repeat center, rgba(0, 0, 0, 0.5); width: 40px; height: 40px; }
.gallery-img p { margin-top: 10px; line-height: 1.5; }

.gallery-photo { padding-top: 68.62%; }

.gallery-thumb { width: 94px; margin: 6px 6px 0 0; cursor: pointer; position: relative; }
.gallery-thumb .thumb-photo { padding-top: 67.02%; }

.gallery-thumb:after { content: ""; background: #000; width: 100%; height: 100%; z-index: 2; position: absolute; left: 0; top: 0; opacity: 0; transition: 0.3s; }

.gallery-thumb:hover:after, .gallery-thumb.slick-current:after { opacity: 0.6; }

.gallery-thumb:nth-child(2n) { margin-right: 0; }

.sideBox { margin-bottom: 40px; }

.sideBox:last-child { margin-bottom: 0; }

.side-tit { font-size: 20px; font-weight: 700; padding-left: 20px; position: relative; line-height: 1.5; margin-bottom: 24px; color: #093182; }

.side-tit:before { content: ""; width: 4px; height: 100%; background: #093182; position: absolute; left: 0; top: 0; }

li.side-li { border-top: solid 1px #C1D0F0; font-weight: 700; }
li.side-li a { text-decoration: none; display: block; padding: 24px 30px 24px 15px; line-height: 1; background: url("../img/p11/side-arrow.svg") no-repeat center right 15px; }
li.side-li a:hover { background-color: #DAE3F6; }

li.side-li.r_current a { background-color: #DAE3F6; pointer-events: none; }

li.side-li:last-child { border-bottom: solid 1px #C1D0F0; }

.side-inner select { display: block; width: 100%; border-radius: 0; padding: 5px 47px 5px 20px; box-sizing: border-box; height: 60px; background: url("../img/p11/select-arrow.svg") no-repeat center right 28px #fff; font-size: 16px; font-weight: 500; cursor: pointer; border: none; -webkit-appearance: none; appearance: none; }

/*ページャー*/
div#pager00 { text-align: center; }

div#pager00 .wp-pagenavi { margin-top: 60px; }

.wp-pagenavi > span, .wp-pagenavi > a { display: inline-block; margin: 4px; text-decoration: none; width: 48px; height: 48px; text-align: center; line-height: 46px; font-size: 14px; font-weight: 700; color: #093182; background: #fff; border: solid 1px #093182; box-sizing: border-box; border-radius: 100%; font-family: "inte"; padding-right: 1px; }

.wp-pagenavi a.page { position: relative; }

.wp-pagenavi span.extend { background: none; color: #093182; box-shadow: none; border: none; }

.wp-pagenavi > a:hover { color: #fff; background-color: #093182; }

.wp-pagenavi a.previouspostslink { color: transparent; background: url("../img/p11/arrow02.svg") no-repeat center #fff; margin-left: 0; }

.wp-pagenavi a.nextpostslink { color: transparent; background: url("../img/p11/arrow03.svg") no-repeat center #fff; margin-right: 0; }

.wp-pagenavi span.current { color: #fff; background: #093182; }

.wp-pagenavi a.first { display: none; }

.wp-pagenavi a.last { display: none; }

.wp-pagenavi a.previouspostslink:hover { background-color: #093182; color: transparent; background-image: url("../img/p11/arrow02h.svg"); }

.wp-pagenavi a.nextpostslink:hover { background-color: #093182; color: transparent; background-image: url("../img/p11/arrow03h.svg"); }

.wp-pagenavi span.pages { display: none; }

.post-navigation ul { margin-top: 80px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.post-navigation ul > li { margin-right: 60px; }
.post-navigation ul > li:last-child { margin-right: 0; }
.post-navigation ul li.prev, .post-navigation ul li.next { border-radius: 100%; }
.post-navigation ul li.prev a, .post-navigation ul li.next a { display: flex; flex-wrap: wrap; align-items: center; font-weight: 700; color: #093182; transition: 0.3s; }
.post-navigation ul li.prev a .arrow, .post-navigation ul li.next a .arrow { width: 50px; height: 50px; border-radius: 100%; border: solid 1px #093182; box-sizing: border-box; display: block; background-color: #093182; }
.post-navigation ul li.kara { opacity: 0; pointer-events: none; display: flex; flex-wrap: wrap; }
.post-navigation ul li.kara .arrow { width: 50px; height: 50px; }
.post-navigation ul li.prev.kara { opacity: 0; pointer-events: none; display: flex; flex-wrap: wrap; }
.post-navigation ul li.prev.kara .arrow { argin-right: 20px; }
.post-navigation ul li.next.kara { opacity: 0; pointer-events: none; display: flex; flex-wrap: wrap; }
.post-navigation ul li.next.kara .arrow { argin-left: 20px; }
.post-navigation ul li.prev a .arrow { background-image: url("../img/p11/arrow-prev.svg"); background-position: center; margin-right: 20px; background-repeat: no-repeat; }
.post-navigation ul li.prev a:hover { opacity: 0.7; }
.post-navigation ul li.next a .arrow { background-image: url("../img/p11/arrow-next.svg"); background-position: center; margin-left: 20px; background-repeat: no-repeat; }
.post-navigation ul li.next a:hover { opacity: 0.7; }
.post-navigation ul li.blog-back { width: 200px; height: 50px; display: table; }
.post-navigation ul li.blog-back > a { display: table-cell; text-align: center; vertical-align: middle; text-decoration: none; border: solid 2px #093182; background: #fff; color: #093182; border-radius: 40px; font-weight: 700; }
.post-navigation ul li.blog-back > a:hover { background: #093182; color: #fff; }

/*12  ブログ
----------------------------------*/
article.blog-art02 { margin-bottom: 20px; }
article.blog-art02 a { text-decoration: none; display: flex; flex-wrap: wrap; width: 100%; background: #fff; }
article.blog-art02 a .img { width: 240px; overflow: hidden; }
article.blog-art02 a .img .in-img { padding-top: 75%; transition: 0.3s; }
article.blog-art02 a .cont { padding: 24px 40px 20px 30px; width: calc(100% - 240px); box-sizing: border-box; }
article.blog-art02 a .cont h2.tit { min-height: 50px; margin-bottom: 30px; font-weight: 700; font-size: 18px; width: 100%; line-height: 25px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; margin-top: 8px; }
article.blog-art02 a .cont .n-date { font-weight: 400; }
article.blog-art02 a:hover .img .in-img { transform: scale(1.1); }

article.blog-art02:last-child { margin-bottom: 0; }

/*詳細*/
article.singleBox01 { background: #fff; padding: 40px 30px; }
article.singleBox01 .infos.flex { margin-left: -10px; width: calc(100% + 10px); margin-bottom: 10px; }
article.singleBox01 .infos.flex > div { line-height: 25px; font-size: 16px; }
article.singleBox01 .infos.flex > .cate { margin-left: 10px; }
article.singleBox01 .infos.flex .n-date { margin-left: auto; }
article.singleBox01 .box01 { margin-bottom: 40px; line-height: 1.6; }
article.singleBox01 .box02 { margin-bottom: 60px; line-height: 1.6; }

.case-tit02 { font-size: 18px; font-weight: 700; line-height: 1.6; margin-bottom: 15px; position: relative; padding-left: 28px; color: #093182; }

.case-tit02:before { content: ""; width: 16px; height: 1px; background: #093182; position: absolute; left: 0; top: 14px; }

.blog-tit02 { font-size: 18px; font-weight: 700; line-height: 1.6; margin-bottom: 20px; color: #093182; border-bottom: solid 2px; padding-bottom: 14px; }

article.singleBox01 .box01 p:first-child, article.singleBox01 .box02 p:first-child, .blog-text p:first-child { margin-top: 0; }
article.singleBox01 .box01 p:first-child img, article.singleBox01 .box02 p:first-child img, .blog-text p:first-child img { margin-top: 0; }
article.singleBox01 .box01 img:first-child, article.singleBox01 .box02 img:first-child, .blog-text img:first-child { margin-top: 0; }
article.singleBox01 .box01 img[class*="wp-image-"], article.singleBox01 .box02 img[class*="wp-image-"], .blog-text img[class*="wp-image-"] { margin: 20px 0; }
article.singleBox01 .box01 iframe, article.singleBox01 .box02 iframe, .blog-text iframe { max-width: 100%; }
article.singleBox01 .box01 div, article.singleBox01 .box02 div, .blog-text div { max-width: 100%; }
article.singleBox01 .box01 a, article.singleBox01 .box02 a, .blog-text a { max-width: 100%; text-decoration: underline; }
article.singleBox01 .box01 a:hover, article.singleBox01 .box02 a:hover, .blog-text a:hover { text-decoration: none; }

article.singleBox01.singleBox01-blog div.witerBox { margin-top: 40px; }
article.singleBox01.singleBox01-blog div#toc_container { box-sizing: border-box; width: 100%; background: #EEEEEE; border: none; padding: 20px 20px 12px; margin-bottom: 40px; }
article.singleBox01.singleBox01-blog div#toc_container p.toc_title { text-align: left; line-height: 1.6; font-size: 16px; font-weight: 700; color: #093182; margin-bottom: 14px; position: relative; padding-left: 12px; }
article.singleBox01.singleBox01-blog div#toc_container p.toc_title:before { content: ""; width: 4px; height: 4px; background: #093182; border-radius: 100%; position: absolute; left: 0; top: 11px; }
article.singleBox01.singleBox01-blog div#toc_container p.toc_title:after { content: ""; width: 4px; height: 4px; background: #093182; border-radius: 100%; position: absolute; left: 52px; top: 11px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list { margin-top: 0 !important; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li { font-size: 16px; font-weight: 500; margin-bottom: 8px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li a { display: inline-block; position: relative; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > a { padding-left: 18px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul { margin-top: 8px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul > li { margin-bottom: 8px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul > li > a { padding-left: 36px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul > li > ul { margin-top: 8px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul > li > ul > li { margin-bottom: 8px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li > ul > li > ul > li > a { padding-left: 52px; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li span.toc_number { display: inline-block; font-size: 16px; font-family: "robo"; color: #093182; vertical-align: -2px; margin-right: 10px; position: absolute; left: 0; top: 0; }
article.singleBox01.singleBox01-blog div#toc_container ul.toc_list > li span.toc_number:after { content: "."; }

.blog_word_box { margin-top: 60px; }
.blog_word_box > .tit { color: #0A0A0A; font-weight: 700; line-height: 1.6; margin-bottom: 10px; font-size: 16px; position: relative; padding-left: 28px; }
.blog_word_box > .tit:before { content: ""; width: 16px; height: 1px; background: #0A0A0A; position: absolute; left: 0; top: 13px; }

ul.word_list.flex { margin-top: -10px; margin-left: -10px; width: calc(100% + 10px); }
ul.word_list.flex > li { margin: 10px 0 0 10px; font-weight: 500; }

/*13 業界別事例
----------------------------------*/
div#p100Box01.case-alls { text-align: left; }

div#p13sBox01 { padding: 90px 0 120px; }
div#p13sBox01 .cont01.wrap { position: relative; z-index: 2; margin-bottom: -15px; }
div#p13sBox01 .ovh { height: 240px; }
div#p13sBox01 div#belt-slider { margin-top: 0; display: flex; flex-wrap: wrap; height: 240px; justify-content: center; }
div#p13sBox01 .bs { width: 320px; }
div#p13sBox01 .cont02.wrap { margin-top: 76px; }
div#p13sBox01 .cont02.wrap .solution { margin-top: 122px; }
div#p13sBox01 .cont02.wrap .solution > div { background: none; padding: 0; color: #093182; }
div#p13sBox01 .cont02.wrap .solution:before { bottom: calc(100% + 30px); }
div#p13sBox01 .cont02.wrap .text02 { margin-top: 35px; }

.bs .in-img { padding-top: 75%; }

.ovh { overflow: hidden; }

.blue-bg-text { margin-bottom: 6px; line-height: 56px; color: #fff; font-weight: 700; font-size: 30px; }
.blue-bg-text > span { display: inline-block; padding: 0 10px 2px; background: #093182; }

.trouBox { padding: 40px 30px; position: relative; background: #EEEEEE; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.trouBox .sub02 { font-size: 36px; }
.trouBox .in-cont { width: 654px; }

ul.feat-list02.flex { margin-top: 25px; justify-content: center; align-items: center; }
ul.feat-list02.flex > li { margin-left: -10px; background: #D50000; padding: 0 20px; line-height: 40px; padding-bottom: 2px; background: #D50000; text-align: center; color: #fff; font-weight: 700; font-size: 22px; clip-path: polygon(17px 0%, 100% 0%, calc(100% - 17px) 100%, 0% 100%); }
ul.feat-list02.flex > li:first-child { margin-left: 0; }

h3.so-tit { font-size: 22px; font-weight: 700; margin-bottom: 10px; }

.yellow-text { margin-bottom: 20px; }
.yellow-text > span { font-weight: 700; background: #FFF000; color: #093182; }

section#p13sBox02 { padding: 120px 0; background: #EAEFFA; }
section#p13sBox02 .strength-list > div.box > .right > .img .in-img { padding-top: 65.07%; }

section#voice-sec02 { padding: 120px 0; background: #042058; color: #fff; }
section#voice-sec02 .btn01 { margin: 60px auto 0; }

article.voice-art02 { width: 260px; margin-right: 20px; }
article.voice-art02 a { display: block; text-decoration: none; color: #fff; }
article.voice-art02 a .img { overflow: hidden; margin-bottom: 20px; }
article.voice-art02 a .img .in-img { padding-top: 63.07%; transition: 0.3s; }
article.voice-art02 a .text { width: 100%; line-height: 1.4; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
article.voice-art02 a:hover .img .in-img { transform: scale(1.1); }

.voice-list02.flex article.voice-art02:nth-child(4n) { margin-right: 0; }

/*100 thanksページ等
----------------------------------*/
div#p100Box01 { padding: 120px 0; text-align: center; }
div#p100Box01 .btn01 { margin: 60px auto 0; }

div#ppBox01 { text-align: left; }

.pp-title01 { font-size: 22px; border-bottom: solid 2px; margin-bottom: 25px; padding-bottom: 10px; }

.pp-title02:first-child { margin-top: 0; }

.pp-title02 { font-size: 18px; padding-left: 15px; position: relative; color: #093182; margin-top: 50px; }

.pp-title02:before { content: ""; width: 5px; height: 65%; background: #093182; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; }

/*デバイス幅
----------------------------------*/
@media screen and (min-width: 0px) and (max-width: 1550px) { .ft-bottom.flex { box-sizing: border-box; padding-right: 58px; }
  div#scr { width: 200px; }
  a.float_contactBtn01 span.hum-ban { width: 57px; height: 79px; } }
@media screen and (min-width: 0px) and (max-width: 1300px) { .ft-bottom.flex { padding-right: 158px; }
  div#header { padding-left: 20px; }
  div#gnav { padding-right: 30px; } }
@media screen and (min-width: 0px) and (max-width: 1280px) { html.showPage, html.showPage body { min-width: 1280px; }
  .slick-counter { display: none; }
  .slider01 button.slick-arrow, .slider02 button.slick-arrow { top: 50%; transform: translateY(-50%); }
  .slider01 button.slick-prev.slick-arrow, .slider02 button.slick-prev.slick-arrow { left: -10px; right: auto; }
  .slider01 button.slick-next.slick-arrow, .slider02 button.slick-next.slick-arrow { left: auto; right: -10px; }
  .slider01 article.works-art, .slider02 article.works-art { width: 260px; }
  .slider01 article.works-art a .cont, .slider02 article.works-art a .cont { padding: 20px; }
  .slider01 article.blog-art01, .slider02 article.blog-art01 { width: 260px; }
  .slider01 article.blog-art01 a .cont, .slider02 article.blog-art01 a .cont { padding: 20px; }
  div#mv.home-mv { height: 520px; }
  div#mv-cont { bottom: auto; top: 150px; }
  .mv-text01 { width: 320px; }
  .mv-text02 { font-size: 13px; }
  .mv-time { width: 320px; }
  div#top-news { height: 70px; padding-top: 5px; padding-bottom: 5px; }
  #header .tel-num a { font-size: 20px; }
  #header .tel-set .bh { font-size: 11px; }
  #header .contact-btn { width: 150px; margin-left: 20px; }
  #header .contact-btn a { height: 45px; font-size: 15px; }
  div.head-right .tel-set { padding-top: 5px; }
  ul.head-nav > li { width: 85px; height: 22px; }
  ul.head-nav > li { font-size: 12px; }
  ul.head-nav > li a { font-size: 12px; }
  ul.head-nav > li a > span { background-size: 5px; padding-left: 9px; padding-bottom: 2px; }
  div#gnav ul.flex > li { font-size: 13px; }
  li:hover .drop-wrap { padding-top: 15px; padding-bottom: 15px; }
  div#gnav ul.flex > li ul.fs > li { font-size: 12px; }
  .drop-wrap { width: 200px; left: calc(50% - 100px); }
  li.nav08 .drop-wrap { right: -20px; }
  .head-inner.flex .logo { width: 210px; }
  #header { height: 80px; }
  div#umv > .wrap { height: 154px; } }
@media screen and (min-width: 0px) and (max-width: 1020px) { .head-inner.flex .logo { width: 150px; }
  div#gnav ul.flex > li { margin-left: 15px; }
  div#gnav ul.flex > li:first-child { margin-left: 0; } }
@media screen and (max-height: 700px) { .slick-counter { display: none; }
  .slider01 button.slick-arrow, .slider02 button.slick-arrow { top: 50%; transform: translateY(-50%); }
  .slider01 button.slick-prev.slick-arrow, .slider02 button.slick-prev.slick-arrow { left: -10px; right: auto; }
  .slider01 button.slick-next.slick-arrow, .slider02 button.slick-next.slick-arrow { left: auto; right: -10px; }
  .slider01 article.works-art, .slider02 article.works-art { width: 260px; }
  .slider01 article.works-art a .cont, .slider02 article.works-art a .cont { padding: 20px; }
  .slider01 article.blog-art01, .slider02 article.blog-art01 { width: 260px; }
  .slider01 article.blog-art01 a .cont, .slider02 article.blog-art01 a .cont { padding: 20px; }
  div#mv.home-mv { height: 520px; }
  div#mv-cont { bottom: auto; top: 150px; }
  .mv-text01 { width: 320px; }
  .mv-text02 { font-size: 13px; }
  .mv-time { width: 320px; }
  div#top-news { height: 70px; padding-top: 5px; padding-bottom: 5px; }
  #header .tel-num a { font-size: 20px; }
  #header .tel-set .bh { font-size: 11px; }
  #header .contact-btn { width: 150px; margin-left: 20px; }
  #header .contact-btn a { height: 45px; font-size: 15px; }
  div.head-right .tel-set { padding-top: 5px; }
  ul.head-nav > li { width: 85px; height: 22px; }
  ul.head-nav > li { font-size: 12px; }
  ul.head-nav > li a { font-size: 12px; }
  ul.head-nav > li a > span { background-size: 5px; padding-left: 9px; padding-bottom: 2px; }
  div#gnav ul.flex > li { font-size: 13px; }
  li:hover .drop-wrap { padding-top: 15px; padding-bottom: 15px; }
  div#gnav ul.flex > li ul.fs > li { font-size: 12px; }
  .drop-wrap { width: 200px; left: calc(50% - 100px); }
  li.nav08 .drop-wrap { right: -20px; }
  .head-inner.flex .logo { width: 210px; }
  #header { height: 80px; }
  div#umv > .wrap { height: 154px; } }
/*ブラウザごと
----------------------------------*/
html.showPage.tokushu div#mv.home-mv { height: 620px !important; }
