@charset "UTF-8";
@font-face { font-family: "HitachiSans-Regular"; src: url("../font/HitachiSans-Regular.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-Italic"; src: url("../font/HitachiSans-Italic.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-Bold"; src: url("../font/HitachiSans-Bold.woff2") format("woff2"); }
@font-face { font-family: "HitachiSans-BoldItalic"; src: url("../font/HitachiSans-BoldItalic.woff2") format("woff2"); }
*, *::before, *::after { box-sizing: border-box; }

body { color: #0C0C0C; background: #FFFFFF; font-size: 1em; letter-spacing: .05em; line-height: 1.6; font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-feature-settings: "palt"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

_:lang(x)::-ms-backdrop, .selector { font-family: "Segoe UI", Meiryo, sans-serif; }

.fnt-HTCS-R { font-family: "HitachiSans-Regular", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-I { font-family: "HitachiSans-Italic", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-B { font-family: "HitachiSans-Bold", sans-serif; letter-spacing: normal; line-height: 1.2; }

.fnt-HTCS-BI { font-family: "HitachiSans-BoldItalic", sans-serif; letter-spacing: normal; line-height: 1.2; }

p { line-height: 1.8; }

img { border: 0; vertical-align: top; }

input, select { position: relative; top: 1px; }

table, th, td { border-collapse: collapse; border-spacing: 0; }

ul, li { list-style: none; }

a:link, a:visited { color: #0C0C0C; text-decoration: none; transition: opacity .5s; }
a:hover, a:active { opacity: .6; }

#cover { width: 100%; height: 100%; position: fixed; background: #FFFFFF; top: 0; left: 0; z-index: 10000; }

#wrapper { overflow: hidden; position: relative; }

.dd599 { display: none; }
@media screen and (max-width: 599px) { .dd599 { display: block !important; } }

@media screen and (max-width: 599px) { .nn599 { display: none !important; } }

.fadeinS, .fadein1, .fadein2, .fadein3, .fadein4, .fadein5, .fadein6, .fadeinF { opacity: 0; transform: translateY(40px); transition: opacity .7s ease-in, transform .7s ease-out; }
.fadeinS.active, .fadein1.active, .fadein2.active, .fadein3.active, .fadein4.active, .fadein5.active, .fadein6.active, .fadeinF.active { opacity: 1; transform: translateY(0); }

.fadein-in1 { opacity: 0; transition: opacity .7s ease-in, transform .7s ease-out; }
.fadein-in1.active { opacity: 1; }

#HeaderArea1.Fix, #HeaderArea2.Fix { min-width: inherit !important; }

.ContainerFix { width: 90% !important; max-width: 1280px !important; }

@media screen and (max-width: 599px) { .inquirySP span, #SupportNaviSearch span span { display: none !important; } }

#HeaderArea2 { z-index: 999 !important; }
#HeaderArea2 h1 { font-weight: 500; }

@media screen and (max-width: 599px) { #GlobalNaviMenu { display: none !important; } }

#HeaderArea2 .gMenu { position: absolute; z-index: 9999; width: 88%; margin: 0 6%; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu { width: 100%; margin: 0; } }
#HeaderArea2 .gMenu ul.mainM { position: relative; display: flex; justify-content: flex-end; z-index: 999; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(2) { background: #CC0000; width: 8.4em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.mainM li:nth-child(2) { width: calc((100% - 4em) / 2); } }
#HeaderArea2 .gMenu ul.mainM li:nth-child(2) a { position: relative; z-index: 9999; display: block; text-align: center; color: #FFFFFF; font-size: 90%; padding: .7em 0; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) { background: rgba(0, 0, 0, 0.4); position: relative; width: 4.5em; text-align: center; padding-top: .4em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger { position: relative; display: inline-block; transition: all .4s; z-index: 9999; width: 1.6em; height: 2em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; width: 100%; height: 2px; background-color: #FFFFFF; border-radius: 2px; left: 0; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(1) { top: .6em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(2) { top: 50%; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger span:nth-of-type(3) { bottom: .5em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(1) { top: .4em; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(2) { width: 60%; left: 20%; }
#HeaderArea2 .gMenu ul.mainM li:nth-child(1) .menu-trigger.active span:nth-of-type(3) { bottom: .3em; }
#HeaderArea2 .gMenu ul.subM { position: absolute; top: 0; right: 0; background: rgba(0, 0, 0, 0.8); z-index: 888; opacity: 0; height: 0; min-height: 0; width: 100%; overflow: hidden; padding: 0; transition: all .4s; display: flex; justify-content: center; flex-wrap: wrap; align-items: flex-start; scrollbar-width: none; }
#HeaderArea2 .gMenu ul.subM.active { opacity: 1; height: auto; min-height: auto; padding: 4em 0 2em; overflow-y: scroll; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM.active { height: 100vmax; min-height: 100vmax; } }
#HeaderArea2 .gMenu ul.subM li { width: 45%; padding: 0 1em 1em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li { width: 90%; padding: 0 0 1.5em; } }
#HeaderArea2 .gMenu ul.subM li .cate { position: relative; color: #FFFFFF; border-bottom: 1px solid #B3B3B3; padding-bottom: .3em; margin-bottom: .5em; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate { display: flex; align-items: baseline; } }
#HeaderArea2 .gMenu ul.subM li .cate a { color: #FFFFFF; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate a { display: flex; align-items: baseline; } }
#HeaderArea2 .gMenu ul.subM li .cate .jp { display: block; font-size: 80%; line-height: 1; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate .jp { order: 2; padding-left: 1em; } }
#HeaderArea2 .gMenu ul.subM li .cate .en { display: block; font-size: 170%; line-height: 1.2; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .cate .en { order: 1; } }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .linkB { display: flex; flex-wrap: wrap; align-items: center; } }
#HeaderArea2 .gMenu ul.subM li .linkB a { display: block; text-align: center; color: #FFFFFF; font-size: 110%; font-weight: 500; padding: .3em 0; }
@media screen and (max-width: 599px) { #HeaderArea2 .gMenu ul.subM li .linkB a { width: 50%; font-size: 100%; line-height: 1.2; padding: .6em 0; } }

main { position: relative; font-size: 1.6vw; }
@media screen and (min-width: 1280px) { main { font-size: 20.4px; } }
@media screen and (max-width: 599px) { main { font-size: 3.2vw; } }
main section { position: relative; /*About-メッセージ*/ /*About-数字でわかる静岡日立*/ /*Works-静岡日立の仕事*/ /*CROSS X TALK*/ /*働く環境・福利厚生*/ /*採用情報*/ /*インタビュー*/ }
main section .headF { position: relative; display: flex; justify-content: space-between; align-items: flex-end; margin: 0 auto 4em; max-width: 1024px; }
@media screen and (max-width: 599px) { main section .headF { display: block; margin-bottom: 4.5em; } }
main section .headF h2 { position: relative; padding-right: 2.6em; }
@media screen and (max-width: 599px) { main section .headF h2 { display: inline-block; margin-bottom: 2.5em; } }
main section .headF h2 .jp { font-size: 90%; letter-spacing: .1em; margin-bottom: .2em; }
@media screen and (max-width: 599px) { main section .headF h2 .jp { font-size: 150%; } }
main section .headF h2 .en { font-size: 335%; line-height: 1; letter-spacing: .03em; }
main section .headF h2 .linkBtn { position: absolute; right: 0; bottom: .5em; }
main section .headF h2 .linkBtn img { display: block; width: 1.6em; height: 1.6em; }
main section .headF .disT { width: 50%; font-size: 75%; letter-spacing: .1em; padding-bottom: .2em; }
@media screen and (max-width: 599px) { main section .headF .disT { width: 100%; font-size: 125%; line-height: 1.6; } }
main section .btnF { position: relative; display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; max-width: 1024px; }
@media screen and (max-width: 599px) { main section .btnF { display: block; } }
main section .btnF li { width: 47.5%; }
@media screen and (max-width: 599px) { main section .btnF li { width: 100%; } }
main section .btnF li a { position: relative; display: block; background: #FFFFFF; color: #FFFFFF; width: 100%; height: 9.5em; border-radius: .4em; overflow: hidden; margin-bottom: 1.8em; }
@media screen and (max-width: 599px) { main section .btnF li a { height: 14.5em; border-radius: .6em; } }
main section .btnF li a::before { content: ""; position: absolute; z-index: 10; right: 1.3em; bottom: 1.2em; width: 1.5em; height: 1.5em; background: url("../img/icn_arrow.svg") no-repeat center center/contain; }
@media screen and (max-width: 599px) { main section .btnF li a::before { width: 2.8em; height: 2.8em; } }
main section .btnF li a .txt { position: absolute; left: 1.3em; bottom: .8em; }
@media screen and (max-width: 599px) { main section .btnF li a .txt { left: 1.5em; bottom: 1.5em; } }
main section .btnF li a .txt .en { display: block; font-size: 80%; letter-spacing: .05em; line-height: 1; padding-left: .2em; margin-bottom: .2em; }
@media screen and (max-width: 599px) { main section .btnF li a .txt .en { font-size: 150%; padding-left: .1em; margin-bottom: .2em; } }
main section .btnF li a .txt .jp { display: block; font-size: 140%; font-weight: 700; line-height: 1; }
@media screen and (max-width: 599px) { main section .btnF li a .txt .jp { font-size: 190%; line-height: 1.1; letter-spacing: .05em; } }
main section .btnF li a .bg { position: relative; object-fit: cover; object-position: center 25%; width: 100%; height: 9.6em; transition: transform .5s; }
@media screen and (max-width: 599px) { main section .btnF li a .bg { height: 14.6em; } }
main section .btnF li a:hover { opacity: 1; }
main section .btnF li a:hover .bg { opacity: .8; transform: scale(1.06); transform-origin: center center; transition: transform 1s ease-out; }
main section .slider-Member { background: #CC0000; }
main section .slider-Member .slider2 { position: relative; }
main section .slider-Member .slider2 li { position: relative; }
main section .slider-Member .slider2 li a { display: block; color: #FFFFFF; }
main section .slider-Member .slider2 li a .pic { position: relative; width: 100%; height: auto; }
main section .slider-Member .slider2 li a .txtB { position: absolute; top: 3.8em; right: .2em; padding-bottom: 1.3em; }
@media screen and (max-width: 599px) { main section .slider-Member .slider2 li a .txtB { font-size: 150%; } }
main section .slider-Member .slider2 li a .txtB.l2 { top: 3.5em; right: 1em; }
main section .slider-Member .slider2 li a .txtB .name { margin-bottom: .2em; }
main section .slider-Member .slider2 li a .txtB .cate { font-size: 70%; line-height: 1.5; }
main section .slider-Member .slider2 li a .txtB .join { font-size: 65%; line-height: 1.1; padding-top: .2em; }
main section .slider-Member .slider2 li a .txtB::after { content: ""; position: absolute; left: 0; bottom: 0; width: 1em; height: 1em; background: url("../img/icn_arrow_b2.svg") no-repeat center center/contain; }
main section .slider-Member .slider2 li a:hover { opacity: 1; font-weight: 900; background-image: linear-gradient(0deg, #FA000F, #CC0000); }
main section .slider-Member .slider2 li a:hover .txtB::after { background-image: url("../img/icn_arrow.svg"); }
main section .slider-Member .slider2 .prev { position: absolute; z-index: 777; left: 0; top: 36%; cursor: pointer; width: 1.8em; }
@media screen and (max-width: 599px) { main section .slider-Member .slider2 .prev { width: 3em; } }
main section .slider-Member .slider2 .prev:hover { opacity: .6; }
main section .slider-Member .slider2 .prev img { width: 100%; height: auto; }
main section .slider-Member .slider2 .next { position: absolute; z-index: 777; right: 0; top: 36%; cursor: pointer; width: 1.8em; }
@media screen and (max-width: 599px) { main section .slider-Member .slider2 .next { width: 3em; } }
main section .slider-Member .slider2 .next:hover { opacity: .6; }
main section .slider-Member .slider2 .next img { width: 100%; height: auto; }
main section .lowerTtl { position: absolute; bottom: 3.5em; left: 10%; color: #FFFFFF; }
@media screen and (max-width: 599px) { main section .lowerTtl { left: 6%; bottom: 6em; } }
main section .lowerTtl .en { font-size: 200%; line-height: 1.2; }
@media screen and (max-width: 599px) { main section .lowerTtl .en { font-size: 180%; margin-bottom: .2em; } }
main section .lowerTtl .jp { font-size: 360%; line-height: 1.1; letter-spacing: .1em; }
@media screen and (max-width: 599px) { main section .lowerTtl .jp { font-size: 350%; letter-spacing: .05em; } }
main section .lowerTtl .jp2 { font-size: 120%; letter-spacing: .1em; line-height: 1.4; margin-left: -9%; }
@media screen and (max-width: 599px) { main section .lowerTtl .jp2 { text-align: center; font-size: 140%; margin-left: 0; } }
main section .lowerTtl .en2 { font-size: 380%; letter-spacing: .02em; line-height: 1.2; margin-left: -9%; }
@media screen and (max-width: 599px) { main section .lowerTtl .en2 { text-align: center; margin-left: 0; } }
main section .lowerTtl .en2 span { position: relative; display: inline-block; height: .74em; width: .74em; background: url("../img/icn_cross.svg") no-repeat center center/contain; margin: 0 .1em; }
main section#topMainSct .inner { position: relative; }
main section#topMainSct .inner .slider-Top { position: relative; }
main section#topMainSct .inner .slider-Top ul { position: relative; }
main section#topMainSct .inner .slider-Top ul li { position: relative; width: 100%; height: auto; aspect-ratio: 9 / 5; }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li { max-height: 34em; } }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul li { aspect-ratio: 9 / 16; max-height: 72vh; } }
main section#topMainSct .inner .slider-Top ul li img { object-fit: cover; object-position: center top; width: 100%; height: auto; aspect-ratio: 9 / 5; }
@media screen and (min-width: 1280px) { main section#topMainSct .inner .slider-Top ul li img { max-height: 34em; } }
@media screen and (max-width: 599px) { main section#topMainSct .inner .slider-Top ul li img { aspect-ratio: 9 / 16; max-height: 72vh; } }
main section#topMainSct .inner .slider-Top ul li.add-animation { animation: zoomUp 18s linear forwards; }
main section#topMainSct .inner .slider-Top ul li:nth-child(1) img, main section#topMainSct .inner .slider-Top ul li:nth-child(4) img { object-position: center center; }
main section#topMainSct .inner .txtB { position: absolute; left: 5.6%; bottom: 8%; color: #FFFFFF; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB { left: 6%; bottom: 7%; } }
main section#topMainSct .inner .txtB .jp { font-size: 295%; font-weight: 400; letter-spacing: .15em; line-height: 1.4; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .jp { white-space: nowrap; font-size: 280%; line-height: 1.2; margin-bottom: .2em; } }
main section#topMainSct .inner .txtB .en1 { font-size: 250%; margin-bottom: .1em; }
@media screen and (max-width: 599px) { main section#topMainSct .inner .txtB .en1 { font-size: 295%; line-height: 1.2; margin-bottom: .15em; } }
main section#topAboutSct { background: url("../img/top_about_bg.webp") no-repeat center center/cover; padding: 8em 11% 6em; color: #FFFFFF; }
@media screen and (max-width: 599px) { main section#topAboutSct { background-image: url("../img/top_about_bg-sp.webp"); padding: 9em 5% 7.5em; } }
main section#topWorksSct { padding: 8em 11% 6em; background: url("../img/top_works_bg.webp") no-repeat center center/cover; }
@media screen and (max-width: 599px) { main section#topWorksSct { padding: 9em 5% 7.5em; background-image: url("../img/top_works_bg-sp.webp"); } }
main section#topMemberSct { color: #FFFFFF; }
main section#topMemberSct .inner { padding: 6em 11% 3em; background: #CC0000; }
@media screen and (max-width: 599px) { main section#topMemberSct .inner { padding: 8em 5% 2em; } }
main section#topMemberSct .inner .headF { margin-bottom: 0; }
main section#topMemberSct .contentsB { position: relative; top: -7em; margin: 0 auto -7em; padding: 0 11%; }
@media screen and (min-width: 1280px) { main section#topMemberSct .contentsB { max-width: 1280px; padding: 0 140.8px; } }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB { top: -5em; margin-bottom: -5em; } }
main section#topMemberSct .contentsB .bnrBtn { position: relative; border-radius: .5em; overflow: hidden; margin-bottom: 5em; }
main section#topMemberSct .contentsB .bnrBtn.shadow { box-shadow: 0 0 15px 10px rgba(0, 0, 0, 0.5); }
main section#topMemberSct .contentsB .bnrBtn a .bg { position: relative; z-index: 1; width: 100%; height: auto; transform: scale(1.008); }
main section#topMemberSct .contentsB .bnrBtn a .txtB { position: absolute; z-index: 5; color: #FFFFFF; }
main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB { width: 100%; left: 0; bottom: 2em; text-align: center; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB { bottom: 38%; } }
main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB .ttl { font-size: 330%; letter-spacing: .02em; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB .ttl { font-size: 300%; } }
main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB .ttl span { position: relative; display: inline-block; height: .7em; width: .7em; background: url("../img/icn_cross.svg") no-repeat center center/contain; margin: 0 .15em; }
main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB .txt { font-size: 90%; line-height: 1; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB .txt { font-size: 150%; line-height: 1.2; } }
main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB::after { content: ""; position: absolute; right: 8%; bottom: 0; width: 2.2em; height: 2.2em; background: url("../img/icn_arrow.svg") no-repeat center center/contain; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.ctBox .txtB::after { left: 50%; right: inherit; bottom: -5em; transform: translateX(-50%); } }
main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB { bottom: 1.8em; left: 5%; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB { bottom: inherit; top: 16%; left: 6%; width: 88%; } }
main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .en { font-size: 130%; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .en { font-size: 160%; } }
main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .jp { font-size: 240%; font-weight: 700; line-height: 1.4; letter-spacing: .15em; margin-bottom: .9em; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .jp { font-size: 250%; margin-bottom: .7em; } }
main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .txt { font-size: 80%; width: 54%; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB .txt { font-size: 125%; line-height: 1.5; width: 100%; } }
main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB::after { content: ""; position: absolute; right: 5%; bottom: .1em; width: 2.2em; height: 2.2em; background: url("../img/icn_arrow.svg") no-repeat center center/contain; }
@media screen and (max-width: 599px) { main section#topMemberSct .contentsB .bnrBtn a.wlBox .txtB::after { right: inherit; left: 50%; bottom: -4em; transform: translateX(-50%); } }
main section#topMemberSct .contentsB .bnrBtn a:hover { opacity: 1; }
main section#topMemberSct .contentsB .bnrBtn a:hover .bg { transform: scale(1.05); transform-origin: center center; transition: transform 1s ease-out; }
main section#topMemberSct .contentsB .bnrBtn a:hover .txtB { opacity: .6; }
main section#topMemberSct.lower { margin-bottom: 5em; height: 28em; overflow: hidden; }
@media screen and (max-width: 599px) { main section#topMemberSct.lower { height: 45em; } }
main section#topMemberSct.lower .inner { padding: 3em 11% 0; text-align: center; }
@media screen and (max-width: 599px) { main section#topMemberSct.lower .inner { padding: 6em 5% 1em; } }
main section#topMemberSct.lower .inner .headF { justify-content: center; }
@media screen and (max-width: 599px) { main section#topMemberSct.lower .inner .headF h2 { padding-right: 0; margin-bottom: 0; } }
main section#topMemberSct.lower .inner .headF h2 .jp { font-size: 110%; }
main section#topMemberSct.lower .inner .headF h2 .en { font-size: 220%; }
main section#topRecruitSct { padding: 2em 0 4em; }
@media screen and (max-width: 599px) { main section#topRecruitSct { padding: 2em 0 6em; } }
main section#topRecruitSct .inner { padding: 0 11%; }
@media screen and (max-width: 599px) { main section#topRecruitSct .inner { padding: 0 5%; } }
main section#topRecruitSct .inner .headF { margin-bottom: 2.5em; }
@media screen and (max-width: 599px) { main section#topRecruitSct .inner .headF { margin-bottom: 0; } }
main section#topRecruitSct .recruitBox { position: relative; }
main section#topRecruitSct .recruitBox ul { display: flex; }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul { display: block; } }
main section#topRecruitSct .recruitBox ul li { position: relative; width: 50%; }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul li { width: 100%; } }
main section#topRecruitSct .recruitBox ul li:first-child a { background: #CC0000; }
main section#topRecruitSct .recruitBox ul li:last-child a { background: #0C0C0C; }
main section#topRecruitSct .recruitBox ul li a { position: relative; display: block; padding: 7em 7% 2.5em; color: #FFFFFF; }
@media screen and (min-width: 1280px) { main section#topRecruitSct .recruitBox ul li a { padding: 145px 7% 50px; } }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul li a { padding: 5em 5% 2em; } }
main section#topRecruitSct .recruitBox ul li a .jp { font-size: 240%; font-weight: 700; letter-spacing: .14em; line-height: 1.4; }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul li a .jp { font-size: 230%; margin-bottom: .2em; } }
main section#topRecruitSct .recruitBox ul li a .en1 { font-size: 130%; line-height: 1; }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul li a .en1 { font-size: 220%; line-height: 1.2; } }
main section#topRecruitSct .recruitBox ul li a .en2 { font-size: 150%; }
@media screen and (max-width: 599px) { main section#topRecruitSct .recruitBox ul li a .en2 { font-size: 220%; } }
main section#topRecruitSct .recruitBox ul li a::after { content: ""; position: absolute; right: 6%; bottom: 2em; width: 2.2em; height: 2.2em; background: url("../img/icn_arrow.svg") no-repeat center center/contain; }
main section#aboutMesHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#aboutMesHeadSct picture { display: block; overflow: hidden; width: 100%; height: 29.2em; }
  main section#aboutMesHeadSct picture .pic { object-fit: cover; height: 29.2em; } }
main section#aboutMesHeadSct .txtB { position: absolute; top: 3.5em; left: 6%; color: #FFFFFF; }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .txtB { top: 6.5em; } }
main section#aboutMesHeadSct .txtB .en { font-size: 90%; line-height: 1.2; }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .txtB .en { font-size: 140%; } }
main section#aboutMesHeadSct .txtB .jp { font-size: 175%; line-height: 1.2; letter-spacing: .05em; margin-bottom: 3.8em; }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .txtB .jp { font-size: 230%; margin-bottom: 9.5em; } }
main section#aboutMesHeadSct .txtB .copy { font-size: 150%; line-height: 1.5; }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .txtB .copy { font-size: 180%; } }
main section#aboutMesHeadSct .name { position: absolute; left: 52%; bottom: 2.52em; }
@media screen and (min-width: 1280px) { main section#aboutMesHeadSct .name { left: inherit; right: 36.4vw; bottom: 14.7em; transform: translateY(calc(18.8vw / 1.3)); } }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .name { position: relative; left: inherit; bottom: inherit; background: #F4F4F4; padding: 3em 0; } }
main section#aboutMesHeadSct .name p { text-align: center; font-size: 65%; line-height: 1.6; }
@media screen and (min-width: 1280px) { main section#aboutMesHeadSct .name p { font-size: 1.05vw; } }
@media screen and (max-width: 599px) { main section#aboutMesHeadSct .name p { font-size: 130%; letter-spacing: .05em; } }
main section#aboutMesContsSct { background: #F4F4F4; padding: 4em 10% 5em; }
@media screen and (max-width: 599px) { main section#aboutMesContsSct { padding: 0; } }
main section#aboutMesContsSct .inner { background: #FFFFFF; padding: 2.5em 2.5em; }
@media screen and (min-width: 1280px) { main section#aboutMesContsSct .inner { width: 1024px; margin: 0 auto; } }
@media screen and (max-width: 599px) { main section#aboutMesContsSct .inner { padding: 3.5em 6% 9em; } }
main section#aboutMesContsSct .inner p { font-size: 90%; }
@media screen and (max-width: 599px) { main section#aboutMesContsSct .inner p { font-size: 125%; } }
main section#aboutMesContsSct .inner .sign { padding: 2em 3% 0 0; text-align: right; }
@media screen and (max-width: 599px) { main section#aboutMesContsSct .inner .sign { padding: 5em 0 0; text-align: center; } }
main section#aboutMesContsSct .inner .sign img { width: 13em; height: auto; }
@media screen and (max-width: 599px) { main section#aboutMesContsSct .inner .sign img { width: 50%; } }
main section#aboutCpdataHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#aboutCpdataHeadSct picture { display: block; overflow: hidden; width: 100%; height: 26.2em; }
  main section#aboutCpdataHeadSct picture .pic { object-fit: cover; height: 26.2em; } }
main section#aboutCpdataContsSct { padding: 3em 10% 5em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct { padding: 2em 5% 5em; } }
main section#aboutCpdataContsSct .dataBox { position: relative; display: flex; justify-content: space-between; flex-wrap: wrap; }
@media screen and (min-width: 1280px) { main section#aboutCpdataContsSct .dataBox { width: 1024px; margin: 0 auto; } }
main section#aboutCpdataContsSct .dataBox > li { position: relative; padding: 1.5em 1em; background: #F4F4F4; margin-bottom: 1em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li { padding: 2em 7% 2.5em; } }
main section#aboutCpdataContsSct .dataBox > li.w100 { width: 100%; }
main section#aboutCpdataContsSct .dataBox > li.w100s { padding: 1.5em 22%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li.w100s { padding: 2em 7% 2.5em; } }
main section#aboutCpdataContsSct .dataBox > li.w50 { width: 49%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li.w50 { width: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .ttl { text-align: center; letter-spacing: .2em; padding-left: .2em; line-height: 1.4; margin-bottom: .8em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .ttl { font-size: 180%; } }
main section#aboutCpdataContsSct .dataBox > li .ttl small { display: block; }
main section#aboutCpdataContsSct .dataBox > li .inBox3 { position: relative; display: flex; justify-content: space-around; padding-top: .3em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .inBox3 { padding-top: 0; display: block; background: #FFFFFF; } }
main section#aboutCpdataContsSct .dataBox > li .inBox3 > li { width: 25%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .inBox3 > li { width: 100%; background: #F4F4F4; padding: 2em 0; margin-bottom: .5em; }
  main section#aboutCpdataContsSct .dataBox > li .inBox3 > li:first-child { padding-top: 0; margin-top: 0; }
  main section#aboutCpdataContsSct .dataBox > li .inBox3 > li:last-child { padding-bottom: 0; margin-bottom: 0; } }
main section#aboutCpdataContsSct .dataBox > li .inBox4 { position: relative; display: flex; justify-content: space-around; padding-top: .5em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .inBox4 { padding-top: 0; display: block; background: #FFFFFF; } }
main section#aboutCpdataContsSct .dataBox > li .inBox4 > li { width: 22%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .inBox4 > li { width: 100%; background: #F4F4F4; padding: 2em 0; margin-bottom: .5em; }
  main section#aboutCpdataContsSct .dataBox > li .inBox4 > li:first-child { padding-top: 0; margin-top: 0; }
  main section#aboutCpdataContsSct .dataBox > li .inBox4 > li:last-child { padding-bottom: 0; margin-bottom: 0; } }
main section#aboutCpdataContsSct .dataBox > li .icn1 { display: block; margin: 0 auto 1.5em; width: 64%; height: auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .icn1 { width: 94%; } }
main section#aboutCpdataContsSct .dataBox > li .icn2 { display: block; margin: 0 auto .5em; width: 50%; height: auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .icn2 { width: 66%; } }
main section#aboutCpdataContsSct .dataBox > li .icn3 { display: block; margin: 0 auto .5em; width: 100%; height: auto; }
main section#aboutCpdataContsSct .dataBox > li .icn4 { display: block; margin: 1em auto -.3em; width: 100%; height: auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .icn4 { width: 80%; } }
main section#aboutCpdataContsSct .dataBox > li .main { text-align: center; color: #CC0000; font-size: 220%; letter-spacing: .1em; padding-left: .1em; margin: .4em auto .3em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .main { font-size: 400%; margin: .5em auto .4em; } }
main section#aboutCpdataContsSct .dataBox > li .main small { font-size: 70%; }
main section#aboutCpdataContsSct .dataBox > li .main2 { text-align: center; font-size: 220%; letter-spacing: .2em; padding-left: .2em; margin: .4em auto .3em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .main2 { font-size: 400%; margin: .5em auto .4em; } }
main section#aboutCpdataContsSct .dataBox > li .main2 small { display: block; font-size: 50%; letter-spacing: .15em; margin-bottom: .2em; }
main section#aboutCpdataContsSct .dataBox > li .main2 .c1 { color: #CC0000; }
main section#aboutCpdataContsSct .dataBox > li .main2 .c2 { color: #fa6900; }
main section#aboutCpdataContsSct .dataBox > li .pie1 { position: relative; margin-right: auto; margin-left: auto; width: 10em; height: 10em; background-image: conic-gradient(#CC0000 0% 75%, #fad200 75% 100%); border-radius: 50%; margin: 1em auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie1 { width: 16em; height: 16em; margin: 1.5em auto 2em; } }
main section#aboutCpdataContsSct .dataBox > li .pie1 span.t1 { position: absolute; bottom: 20%; right: 20%; color: #FFFFFF; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie1 span.t1 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie1 span.t2 { position: absolute; top: 20%; left: 15%; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie1 span.t2 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 { position: relative; margin-right: auto; margin-left: auto; width: 10em; height: 10em; background-image: conic-gradient(#CC0000 0% 37%, #fa6900 37% 59%, #fad200 59% 69%, #737373 69% 91%, #B3B3B3 91% 100%); border-radius: 50%; margin: 1em auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 { width: 16em; height: 16em; margin: 1.5em auto 2em; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 span.t1 { position: absolute; top: 32%; right: 14%; color: #FFFFFF; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 span.t1 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 span.t2 { position: absolute; bottom: 13%; right: 38%; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 span.t2 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 span.t3 { position: absolute; bottom: 23%; left: 19%; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 span.t3 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 span.t4 { position: absolute; top: 35%; left: 14%; color: #FFFFFF; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 span.t4 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie2 span.t5 { position: absolute; top: 10%; left: 28.5%; font-size: 70%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie2 span.t5 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie3 { position: relative; margin-right: auto; margin-left: auto; width: 10em; height: 10em; background-image: conic-gradient(#CC0000 0% 56%, #fad200 56% 100%); border-radius: 50%; margin: 1em auto; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie3 { width: 16em; height: 16em; margin: 1.5em auto 2em; } }
main section#aboutCpdataContsSct .dataBox > li .pie3 span.t1 { position: absolute; bottom: 35%; right: 12%; color: #FFFFFF; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie3 span.t1 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie3 span.t2 { position: absolute; top: 35%; left: 12%; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie3 span.t2 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie4 { position: relative; margin-right: auto; margin-left: auto; width: 10em; height: 10em; background-image: conic-gradient(#CC0000 0% 80%, #fad200 80% 100%); border-radius: 50%; margin: .5em auto 0; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie4 { width: 16em; height: 16em; margin: 1.5em auto 2em; } }
main section#aboutCpdataContsSct .dataBox > li .pie4 span.t1 { position: absolute; bottom: 20%; right: 20%; color: #FFFFFF; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie4 span.t1 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .pie4 span.t2 { position: absolute; top: 17%; left: 22%; font-size: 80%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .pie4 span.t2 { font-size: 100%; } }
main section#aboutCpdataContsSct .dataBox > li .txt100 { display: block; margin: 0 auto; width: 100%; font-size: 80%; letter-spacing: .1em; line-height: 1.6; text-align: justify; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .txt100 { font-size: 125%; } }
main section#aboutCpdataContsSct .dataBox > li .fBox { position: relative; display: flex; justify-content: space-around; align-items: center; padding: 0 10%; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .fBox { display: block; padding: 0; } }
main section#aboutCpdataContsSct .dataBox > li .fBox .pieB .ttl { margin-bottom: .5em; }
main section#aboutCpdataContsSct .dataBox > li .fBox .txtB { width: 12em; }
@media screen and (max-width: 599px) { main section#aboutCpdataContsSct .dataBox > li .fBox .txtB { width: 100%; } }
main section#worksHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#worksHeadSct picture { display: block; overflow: hidden; width: 100%; height: 22em; }
  main section#worksHeadSct picture .pic { object-fit: cover; height: 22em; } }
@media screen and (max-width: 599px) { main section#worksHeadSct .lowerTtl { bottom: 10em; } }
@media screen and (max-width: 599px) { main section#worksHeadSct .lowerTtl .jp { white-space: nowrap; } }
main section#worksContentSct { background: #F4F4F4; padding: 3.5em 10%; }
@media screen and (max-width: 599px) { main section#worksContentSct { padding: 5em 5%; } }
main section#worksContentSct .epBox { margin-bottom: 5em; }
@media screen and (min-width: 1280px) { main section#worksContentSct .epBox { width: 1024px; margin: 0 auto; } }
@media screen and (max-width: 599px) { main section#worksContentSct .epBox { margin-bottom: 6em; } }
main section#worksContentSct .epBox .ttl { font-size: 145%; letter-spacing: .15em; line-height: 1.6; margin-bottom: 1em; }
@media screen and (max-width: 599px) { main section#worksContentSct .epBox .ttl { font-size: 160%; margin-bottom: 1.2em; } }
main section#worksContentSct .epBox .txt { width: 70%; font-size: 80%; letter-spacing: .1em; }
@media screen and (max-width: 599px) { main section#worksContentSct .epBox .txt { width: 100%; font-size: 125%; } }
main section#worksContentSct .solutionB { position: relative; }
main section#worksContentSct .solutionB .head { margin-bottom: 2em; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB .head { margin-bottom: 3.5em; } }
main section#worksContentSct .solutionB .head .jp { display: block; font-size: 80%; line-height: 1.4; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB .head .jp { font-size: 155%; letter-spacing: .1em; line-height: 1.5; } }
main section#worksContentSct .solutionB .head .en { display: block; color: #CC0000; font-size: 250%; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB .head .en { font-size: 260%; } }
main section#worksContentSct .solutionB ul { position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; }
main section#worksContentSct .solutionB ul li { width: 31%; padding: 6em 1em 1em; margin-bottom: 2em; background: #FFFFFF url("../img/works_icn1.svg") no-repeat center 1.8em/3.5em; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB ul li { width: 48%; margin-bottom: 1em; background-size: 4em; } }
main section#worksContentSct .solutionB ul li .ttl { text-align: center; color: #CC0000; font-size: 90%; margin-bottom: .6em; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB ul li .ttl { font-size: 165%; line-height: 1.3; white-space: nowrap; } }
main section#worksContentSct .solutionB ul li .txt { color: #4D4D4D; font-size: 65%; text-align: justify; line-height: 1.6; }
@media screen and (max-width: 599px) { main section#worksContentSct .solutionB ul li .txt { display: block; width: 90%; margin: 0 auto; font-size: 120%; } }
main section#worksContentSct .solutionB ul li:nth-child(2) { background-image: url("../img/works_icn2.svg"); }
main section#worksContentSct .solutionB ul li:nth-child(3) { background-image: url("../img/works_icn3.svg"); }
main section#worksContentSct .solutionB ul li:nth-child(4) { background-image: url("../img/works_icn4.svg"); }
main section#worksContentSct .solutionB ul li:nth-child(5) { background-image: url("../img/works_icn5.svg"); }
main section#worksContentSct .solutionB ul li:nth-child(6) { background-image: url("../img/works_icn6.svg"); }
main section#worksSalesSct, main section#worksEngineerSct, main section#worksSeSct, main section#worksGeneralSct { padding-bottom: 5em; }
main section#worksSalesSct .headB, main section#worksEngineerSct .headB, main section#worksSeSct .headB, main section#worksGeneralSct .headB { position: relative; }
main section#worksSalesSct .headB .pic, main section#worksEngineerSct .headB .pic, main section#worksSeSct .headB .pic, main section#worksGeneralSct .headB .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#worksSalesSct .headB picture, main section#worksEngineerSct .headB picture, main section#worksSeSct .headB picture, main section#worksGeneralSct .headB picture { display: block; overflow: hidden; width: 100%; height: 22em; }
  main section#worksSalesSct .headB picture .pic, main section#worksEngineerSct .headB picture .pic, main section#worksSeSct .headB picture .pic, main section#worksGeneralSct .headB picture .pic { object-fit: cover; height: 22em; } }
main section#worksSalesSct .headB h3, main section#worksEngineerSct .headB h3, main section#worksSeSct .headB h3, main section#worksGeneralSct .headB h3 { position: absolute; left: 10%; bottom: 4em; color: #FFFFFF; }
@media screen and (max-width: 599px) { main section#worksSalesSct .headB h3, main section#worksEngineerSct .headB h3, main section#worksSeSct .headB h3, main section#worksGeneralSct .headB h3 { left: 6%; } }
main section#worksSalesSct .headB h3 .jp, main section#worksEngineerSct .headB h3 .jp, main section#worksSeSct .headB h3 .jp, main section#worksGeneralSct .headB h3 .jp { display: block; font-size: 280%; letter-spacing: .05em; line-height: 1.3; }
@media screen and (max-width: 599px) { main section#worksSalesSct .headB h3 .jp, main section#worksEngineerSct .headB h3 .jp, main section#worksSeSct .headB h3 .jp, main section#worksGeneralSct .headB h3 .jp { margin-bottom: .1em; } }
main section#worksSalesSct .headB h3 .en, main section#worksEngineerSct .headB h3 .en, main section#worksSeSct .headB h3 .en, main section#worksGeneralSct .headB h3 .en { display: block; letter-spacing: .1em; }
@media screen and (max-width: 599px) { main section#worksSalesSct .headB h3 .en, main section#worksEngineerSct .headB h3 .en, main section#worksSeSct .headB h3 .en, main section#worksGeneralSct .headB h3 .en { font-size: 150%; } }
main section#worksSalesSct .detailB, main section#worksEngineerSct .detailB, main section#worksSeSct .detailB, main section#worksGeneralSct .detailB { position: relative; display: flex; padding: 5em 10% 3em; justify-content: space-between; }
@media screen and (min-width: 1280px) { main section#worksSalesSct .detailB, main section#worksEngineerSct .detailB, main section#worksSeSct .detailB, main section#worksGeneralSct .detailB { padding: 5em calc((100% - 1024px) / 2) 3em; } }
@media screen and (max-width: 599px) { main section#worksSalesSct .detailB, main section#worksEngineerSct .detailB, main section#worksSeSct .detailB, main section#worksGeneralSct .detailB { display: block; padding: 5em 6% 3em; } }
main section#worksSalesSct .detailB .txtB, main section#worksEngineerSct .detailB .txtB, main section#worksSeSct .detailB .txtB, main section#worksGeneralSct .detailB .txtB { width: 47%; }
@media screen and (max-width: 599px) { main section#worksSalesSct .detailB .txtB, main section#worksEngineerSct .detailB .txtB, main section#worksSeSct .detailB .txtB, main section#worksGeneralSct .detailB .txtB { width: 100%; margin-bottom: 5em; } }
main section#worksSalesSct .detailB .txtB p, main section#worksEngineerSct .detailB .txtB p, main section#worksSeSct .detailB .txtB p, main section#worksGeneralSct .detailB .txtB p { font-size: 72%; }
@media screen and (max-width: 599px) { main section#worksSalesSct .detailB .txtB p, main section#worksEngineerSct .detailB .txtB p, main section#worksSeSct .detailB .txtB p, main section#worksGeneralSct .detailB .txtB p { font-size: 130%; } }
main section#worksSalesSct .detailB .imgB, main section#worksEngineerSct .detailB .imgB, main section#worksSeSct .detailB .imgB, main section#worksGeneralSct .detailB .imgB { width: 48%; }
@media screen and (max-width: 599px) { main section#worksSalesSct .detailB .imgB, main section#worksEngineerSct .detailB .imgB, main section#worksSeSct .detailB .imgB, main section#worksGeneralSct .detailB .imgB { width: 100%; } }
main section#worksSalesSct .detailB .imgB img, main section#worksEngineerSct .detailB .imgB img, main section#worksSeSct .detailB .imgB img, main section#worksGeneralSct .detailB .imgB img { width: 100%; height: auto; }
@media screen and (max-width: 599px) { main section#worksSeSct .headB h3 .jp { letter-spacing: 0; font-size: 250%; } }
main section#crossHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#crossHeadSct picture { display: block; overflow: hidden; width: 100%; height: 28.2em; }
  main section#crossHeadSct picture .pic { object-fit: cover; object-position: center top; height: 28.2em; } }
@media screen and (max-width: 599px) { main section#crossHeadSct .lowerTtl { width: 100%; left: 0; bottom: 9.5em; } }
main section#crossContentSct { padding-top: 5em; background: #F4F4F4; }
main section#crossContentSct .member { display: block; text-align: center; color: #FA000F; font-size: 110%; margin-bottom: 2em; }
@media screen and (max-width: 599px) { main section#crossContentSct .member { font-size: 150%; } }
main section#crossContentSct .listB { position: relative; margin-bottom: 5em; }
@media screen and (min-width: 1280px) { main section#crossContentSct .listB { width: 1240px; margin: 0 auto 4em; } }
@media screen and (max-width: 599px) { main section#crossContentSct .listB { margin-bottom: 6em; } }
main section#crossContentSct .listB ul { display: flex; justify-content: center; }
@media screen and (max-width: 599px) { main section#crossContentSct .listB ul { flex-wrap: wrap; } }
main section#crossContentSct .listB ul li { position: relative; width: 18%; padding: 0 1.2em 2em; text-align: center; }
@media screen and (max-width: 599px) { main section#crossContentSct .listB ul li { width: 45%; } }
main section#crossContentSct .listB ul li .pic { width: 100%; height: auto; margin-bottom: .8em; }
main section#crossContentSct .listB ul li .name { font-size: 110%; margin-bottom: .3em; }
main section#crossContentSct .listB ul li .cate { font-size: 80%; line-height: 1.5; }
main section#crossContentSct .listB ul li .join { font-size: 70%; line-height: 1.5; }
main section#crossContentSct .themeB { position: relative; padding-bottom: 10em; }
main section#crossContentSct .themeB .eyecB { position: relative; z-index: 5; padding-top: 2.7em; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB { padding-top: 3.5em; } }
main section#crossContentSct .themeB .eyecB .pic { display: block; width: 90%; height: auto; margin-left: 10%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB .pic { width: 95%; margin-left: 5%; } }
@media screen and (min-width: 1280px) { main section#crossContentSct .themeB .eyecB picture { display: block; overflow: hidden; width: 100%; height: 22em; }
  main section#crossContentSct .themeB .eyecB picture .pic { object-fit: cover; height: 22em; } }
main section#crossContentSct .themeB .eyecB .themeT { position: absolute; top: 0; left: 20%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB .themeT { left: 31%; }
  main section#crossContentSct .themeB .eyecB .themeT.l3 { left: 37%; } }
main section#crossContentSct .themeB .eyecB .themeT p { writing-mode: vertical-rl; color: #FFFFFF; background: #CC0000; line-height: 1; padding: 1em .6em; border-radius: .5em; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB .themeT p { font-size: 140%; } }
main section#crossContentSct .themeB .eyecB .themeC { position: absolute; top: 0; left: 15%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB .themeC { left: 11%; } }
main section#crossContentSct .themeB .eyecB .themeC p { writing-mode: vertical-rl; color: #FFFFFF; background: #4D4D4D; font-size: 90%; line-height: 1; letter-spacing: .05em; padding: 1em .75em 1em .65em; border-radius: .5em; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .eyecB .themeC p { font-size: 140%; line-height: 1.4; padding: 1em .6em 2em .5em; } }
main section#crossContentSct .themeB .talkB { position: relative; top: -11em; margin-bottom: -11em; z-index: 1; background: #FFFFFF; width: 90%; padding: 15em 10% 5em; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB { width: 100%; padding: 14em 6% 5em; } }
main section#crossContentSct .themeB .talkB .question { color: #FA000F; font-size: 120%; letter-spacing: .08em; margin-bottom: 2.5em; }
@media screen and (min-width: 1280px) { main section#crossContentSct .themeB .talkB .question { width: 880px; margin: 0 auto 2.5em; } }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .question { font-size: 135%; } }
main section#crossContentSct .themeB .talkB .answer { position: relative; display: flex; justify-content: space-between; align-items: center; margin-bottom: 2.5em; }
@media screen and (min-width: 1280px) { main section#crossContentSct .themeB .talkB .answer { width: 880px; margin: 0 auto 2.5em; } }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .answer { align-items: stretch; margin-bottom: 5em; } }
main section#crossContentSct .themeB .talkB .answer .picB { width: 15%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .answer .picB { padding-top: 1em; width: 20%; } }
main section#crossContentSct .themeB .talkB .answer .picB .pic { width: 100%; height: auto; margin-bottom: .3em; }
main section#crossContentSct .themeB .talkB .answer .picB .name { display: block; text-align: center; font-size: 80%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .answer .picB .name { font-size: 90%; } }
main section#crossContentSct .themeB .talkB .answer .txtB { width: 78%; padding-bottom: 1em; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .answer .txtB { width: 74%; padding-bottom: 0; } }
main section#crossContentSct .themeB .talkB .answer .txtB p { font-size: 75%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB .talkB .answer .txtB p { font-size: 115%; } }
main section#crossContentSct .themeB.re .eyecB .pic { margin-left: 0; }
main section#crossContentSct .themeB.re .eyecB .themeT { left: 82%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB.re .eyecB .themeT { left: 78%; } }
main section#crossContentSct .themeB.re .eyecB .themeC { left: 77%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB.re .eyecB .themeC { left: 58%; }
  main section#crossContentSct .themeB.re .eyecB .themeC.l3 { left: 52%; } }
main section#crossContentSct .themeB.re .talkB { margin-left: 10%; }
@media screen and (max-width: 599px) { main section#crossContentSct .themeB.re .talkB { margin-left: 0; } }
@media screen and (min-width: 1280px) { main section#crossContentSct .themeB.re .talkB .question { margin: 0 0 2.5em; } }
@media screen and (min-width: 1280px) { main section#crossContentSct .themeB.re .talkB .answer { margin: 0 0 2.5em; } }
main section#lifeHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#lifeHeadSct picture { display: block; overflow: hidden; width: 100%; height: 26.2em; }
  main section#lifeHeadSct picture .pic { object-fit: cover; height: 26.2em; } }
@media screen and (max-width: 599px) { main section#lifeHeadSct .lowerTtl .jp { white-space: nowrap; line-height: 1.3; } }
@media screen and (max-width: 599px) { main section#lifeHeadSct .lowerTtl .jp span { display: none; } }
main section#lifeContentSct { padding: 5em 10% 7em; background: #F4F4F4; }
@media screen and (max-width: 599px) { main section#lifeContentSct { padding: 4em 5% 7em; } }
main section#lifeContentSct .ttl { text-align: center; font-size: 180%; margin-bottom: 1em; }
@media screen and (max-width: 599px) { main section#lifeContentSct .ttl { font-size: 220%; margin-bottom: 1.5em; } }
main section#lifeContentSct .inner { background: #FFFFFF; padding: 3em 3%; }
@media screen and (min-width: 1280px) { main section#lifeContentSct .inner { width: 1024px; margin: 0 auto; } }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner { padding: 0; } }
main section#lifeContentSct .inner table { font-size: 80%; }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner table { font-size: 125%; } }
main section#lifeContentSct .inner table tr th { border: 1px solid #B3B3B3; color: #CC0000; white-space: nowrap; font-weight: 400; vertical-align: middle; padding: 1em; }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner table tr th { display: block; color: #FFFFFF; background: #CC0000; border: none; text-align: center; } }
main section#lifeContentSct .inner table tr td { border: 1px solid #B3B3B3; padding: 1em 1.5em; }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner table tr td { display: block; padding: 1.5em 1em; } }
main section#lifeContentSct .inner table tr td ul { padding-left: 1.8em; }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner table tr td ul { padding-left: 1.4em; } }
main section#lifeContentSct .inner table tr td ul li { list-style: disc; padding: .3em 0; line-height: 1.8; }
@media screen and (max-width: 599px) { main section#lifeContentSct .inner table tr td ul li { line-height: 1.6; } }
main section#lifeContentSct .inner table tr td p { line-height: 2; }
main section#recruitHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#recruitHeadSct picture { display: block; overflow: hidden; width: 100%; height: 26.2em; }
  main section#recruitHeadSct picture .pic { object-fit: cover; height: 26.2em; } }
@media screen and (max-width: 599px) { main section#recruitHeadSct .lowerTtl { bottom: 9em; } }
main section#recruitContentSct { padding: 5em 10% 7em; background: #F4F4F4; }
@media screen and (max-width: 599px) { main section#recruitContentSct { padding: 4em 0 7em; } }
main section#recruitContentSct .ttl { text-align: center; font-size: 180%; }
@media screen and (max-width: 599px) { main section#recruitContentSct .ttl { font-size: 220%; } }
main section#recruitContentSct .new { text-align: center; font-size: 180%; padding-top: 1em; }
@media screen and (max-width: 599px) { main section#recruitContentSct .new { font-size: 220%; margin-bottom: 1em; } }
main section#recruitContentSct #career { padding-top: 4em; }
@media screen and (max-width: 599px) { main section#recruitContentSct #career { padding-top: 5em; } }
main section#recruitContentSct .sub { text-align: center; font-size: 120%; margin-bottom: .8em; }
@media screen and (max-width: 599px) { main section#recruitContentSct .sub { font-size: 180%; margin-bottom: 1em; } }
main section#recruitContentSct .inner { background: #FFFFFF; padding: 1em 3%; margin-bottom: 4em; }
@media screen and (min-width: 1280px) { main section#recruitContentSct .inner { width: 1024px; margin: 0 auto 4em; } }
@media screen and (max-width: 599px) { main section#recruitContentSct .inner { padding: 1em .5em; } }
main section#recruitContentSct .inner .txt { font-size: 80%; text-align: center; margin-bottom: .5em; }
@media screen and (max-width: 599px) { main section#recruitContentSct .inner .txt { font-size: 110%; } }
main section#recruitContentSct .inner .infoB { margin: 0 auto; font-size: 80%; }
@media screen and (max-width: 599px) { main section#recruitContentSct .inner .infoB { font-size: 110%; } }
main section#recruitContentSct .inner .infoB tr th { color: #CC0000; white-space: nowrap; font-weight: 400; padding: 1em; }
main section#recruitContentSct .inner .infoB tr td { padding: 1em; }
main section#recruitContentSct .flowB { position: relative; margin-bottom: 4em; }
@media screen and (min-width: 1280px) { main section#recruitContentSct .flowB { width: 1024px; margin: 0 auto 4em; } }
main section#recruitContentSct .flowB > li { position: relative; background: #FFFFFF; text-align: center; padding: 1em; font-size: 80%; margin-bottom: 4em; }
@media screen and (max-width: 599px) { main section#recruitContentSct .flowB > li { font-size: 110%; } }
main section#recruitContentSct .flowB > li .join { position: relative; display: flex; justify-content: center; margin-top: .5em; }
@media screen and (max-width: 599px) { main section#recruitContentSct .flowB > li .join { display: block; } }
main section#recruitContentSct .flowB > li .join > li { padding: 0 1.5em; }
main section#recruitContentSct .flowB > li .join > li p { display: block; width: 12em; padding: .4em 0; text-align: center; border: 2px solid #e5761b; }
@media screen and (max-width: 599px) { main section#recruitContentSct .flowB > li .join > li p { margin: 0 auto 1em; } }
main section#recruitContentSct .flowB > li .join > li:nth-child(2) p { border: 2px solid #d9e021; }
main section#recruitContentSct .flowB > li .join > li:nth-child(3) p { border: 2px solid #8cc63f; }
main section#recruitContentSct .flowB > li .img { display: block; margin: .5em auto 0; }
main section#recruitContentSct .flowB > li::after { content: ""; position: absolute; left: 50%; bottom: -3.3em; transform: translateX(-50%); width: 7em; height: 2.5em; background: url("../img/icn_arrow3.svg") no-repeat center center/contain; }
main section#recruitContentSct .flowB > li:last-child::after { display: none; }
main section#memberHeadSct .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#memberHeadSct picture { display: block; overflow: hidden; width: 100%; height: 29.2em; }
  main section#memberHeadSct picture .pic { object-fit: cover; object-position: center top; height: 29.2em; } }
main section#memberHeadSct .lowerTtl { left: 7%; bottom: 5em; }
@media screen and (max-width: 599px) { main section#memberHeadSct .lowerTtl { left: 6%; bottom: 8em; } }
main section#memberHeadSct .lowerTtl .jp3 { font-size: 145%; letter-spacing: .1em; line-height: 1.6; }
@media screen and (max-width: 599px) { main section#memberHeadSct .lowerTtl .jp3 { white-space: nowrap; font-size: 160%; } }
main section#memberHeadSct .nameB { position: absolute; top: 3.8em; left: 7%; background: #CC0000; color: #FFFFFF; width: 9em; height: 9em; border-radius: .5em; padding: .8em 1.2em; }
@media screen and (max-width: 599px) { main section#memberHeadSct .nameB { top: 7.5em; left: 6%; width: 11em; height: 13em; padding: 1.2em; } }
main section#memberHeadSct .nameB .cate { font-size: 75%; line-height: 1.6; }
@media screen and (max-width: 599px) { main section#memberHeadSct .nameB .cate { font-size: 140%; letter-spacing: .1em; margin-bottom: .3em; } }
main section#memberHeadSct .nameB .join { font-size: 65%; line-height: 1.5; margin-bottom: 2.6em; }
@media screen and (max-width: 599px) { main section#memberHeadSct .nameB .join { font-size: 90%; margin-bottom: 2.2em; } }
main section#memberHeadSct .nameB .name { font-size: 120%; }
@media screen and (max-width: 599px) { main section#memberHeadSct .nameB .name { font-size: 170%; } }
main section#memberContentSct { background: #F4F4F4; padding-top: 6em; }
main section#memberContentSct .themeB { position: relative; }
main section#memberContentSct .themeB .eyecB { position: relative; z-index: 5; padding-top: 2.7em; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB { padding-top: 3.5em; } }
main section#memberContentSct .themeB .eyecB .pic { display: block; width: 90%; height: auto; margin-left: 10%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB .pic { width: 95%; margin-left: 5%; } }
@media screen and (min-width: 1280px) { main section#memberContentSct .themeB .eyecB picture { display: block; overflow: hidden; width: 100%; height: 22em; }
  main section#memberContentSct .themeB .eyecB picture .pic { object-fit: cover; object-position: center top; height: 22em; } }
main section#memberContentSct .themeB .eyecB .themeT { position: absolute; top: 0; left: 20%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB .themeT { left: 31%; }
  main section#memberContentSct .themeB .eyecB .themeT.l3 { left: 37%; } }
main section#memberContentSct .themeB .eyecB .themeT p { writing-mode: vertical-rl; color: #FFFFFF; background: #CC0000; line-height: 1; padding: 1em .6em; border-radius: .5em; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB .themeT p { font-size: 140%; } }
main section#memberContentSct .themeB .eyecB .themeC { position: absolute; top: 0; left: 15%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB .themeC { left: 11%; } }
main section#memberContentSct .themeB .eyecB .themeC p { writing-mode: vertical-rl; color: #FFFFFF; background: #4D4D4D; font-size: 90%; line-height: 1; letter-spacing: .05em; padding: 1em .75em 1em .65em; border-radius: .5em; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .eyecB .themeC p { font-size: 140%; line-height: 1.4; padding: 1em .6em 2em .5em; } }
main section#memberContentSct .themeB.re .eyecB .pic { margin-left: 0; }
main section#memberContentSct .themeB.re .eyecB .themeT { left: 82%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB.re .eyecB .themeT { left: 78%; } }
main section#memberContentSct .themeB.re .eyecB .themeC { left: 77%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB.re .eyecB .themeC { left: 64%; }
  main section#memberContentSct .themeB.re .eyecB .themeC.l2 { left: 58%; } }
main section#memberContentSct .themeB.re .talkB { margin-left: 10%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB.re .talkB { margin-left: 0; } }
main section#memberContentSct .themeB .txtB { position: relative; padding: 5em 10% 7em; display: flex; justify-content: space-between; }
@media screen and (min-width: 1280px) { main section#memberContentSct .themeB .txtB { padding: 5em 0 7em; width: 1024px; margin: 0 auto; } }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .txtB { display: block; padding: 4em 6% 7em; } }
main section#memberContentSct .themeB .txtB .ttl { width: 50%; color: #CC0000; font-size: 110%; letter-spacing: .15em; white-space: nowrap; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .txtB .ttl { width: 100%; font-size: 155%; line-height: 1.6; letter-spacing: .12em; margin-bottom: 2.4em; } }
main section#memberContentSct .themeB .txtB .txt { width: 50%; font-size: 70%; }
@media screen and (max-width: 599px) { main section#memberContentSct .themeB .txtB .txt { width: 100%; font-size: 115%; } }
main section#memberContentSct .dayS { position: relative; padding: 4em 10%; background: #FFFFFF; display: flex; }
@media screen and (min-width: 1280px) { main section#memberContentSct .dayS { padding: 4em calc((100% - 1024px) / 2); min-width: 1024px; margin: 0 auto; } }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS { display: block; padding: 5em 5%; } }
main section#memberContentSct .dayS .ttlB { width: 50%; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .ttlB { width: 100%; padding-bottom: 2.5em; } }
main section#memberContentSct .dayS .ttlB p small { display: block; letter-spacing: .1em; margin-bottom: .2em; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .ttlB p small { font-size: 125%; } }
main section#memberContentSct .dayS .ttlB p span { display: block; color: #CC0000; font-size: 155%; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .ttlB p span { font-size: 180%; } }
main section#memberContentSct .dayS .txtB { width: 50%; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .txtB { width: 100%; } }
main section#memberContentSct .dayS .txtB ul li { position: relative; display: flex; font-size: 70%; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .txtB ul li { font-size: 110%; } }
main section#memberContentSct .dayS .txtB ul li .time { line-height: 1.3; letter-spacing: .1em; width: 4.9em; padding: .7em 0 .5em; }
main section#memberContentSct .dayS .txtB ul li .scdu { line-height: 1.3; letter-spacing: .15em; width: 86%; border-left: 1px solid #B3B3B3; padding: .6em 0 .6em 1.8em; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .txtB ul li .scdu { width: 100%; } }
main section#memberContentSct .dayS .txtB ul li::after { content: ""; position: absolute; left: 4.69em; top: 1.1em; width: .5em; height: .5em; background: #CC0000; border-radius: 50%; }
@media screen and (max-width: 599px) { main section#memberContentSct .dayS .txtB ul li::after { left: 3.8em; } }
main section#memberContentSct .vamB { position: relative; color: #FFFFFF; }
main section#memberContentSct .vamB .pic { width: 100%; height: auto; }
@media screen and (min-width: 1280px) { main section#memberContentSct .vamB picture { display: block; overflow: hidden; width: 100%; height: 23em; }
  main section#memberContentSct .vamB picture .pic { object-fit: cover; object-position: center top; height: 23em; } }
main section#memberContentSct .vamB .txtB { position: absolute; left: 10%; bottom: 3em; }
@media screen and (min-width: 1280px) { main section#memberContentSct .vamB .txtB { left: calc((100% - 1024px) / 2); } }
@media screen and (max-width: 599px) { main section#memberContentSct .vamB .txtB { left: 6%; bottom: 2.5em; } }
main section#memberContentSct .vamB .txtB .ttl { margin-bottom: 2em; }
@media screen and (max-width: 599px) { main section#memberContentSct .vamB .txtB .ttl { margin-bottom: 3em; } }
main section#memberContentSct .vamB .txtB .ttl small { display: block; letter-spacing: .1em; margin-bottom: .2em; }
@media screen and (max-width: 599px) { main section#memberContentSct .vamB .txtB .ttl small { font-size: 125%; } }
main section#memberContentSct .vamB .txtB .ttl span { display: block; font-size: 155%; }
@media screen and (max-width: 599px) { main section#memberContentSct .vamB .txtB .ttl span { font-size: 180%; } }
main section#memberContentSct .vamB .txtB .txt { width: 44%; font-size: 70%; line-height: 1.6; }
@media screen and (max-width: 599px) { main section#memberContentSct .vamB .txtB .txt { width: 88%; font-size: 110%; line-height: 1.8; } }

@keyframes zoomUp { 0% { transform-origin: top center; transform: scale(1); }
  100% { transform: scale(1.2);
    /* 拡大率 */ } }
#footer { position: relative; }
#footer #FooterArea.Fix { min-width: inherit !important; }
#footer #Copyright { padding-top: 4px; }
@media screen and (max-width: 599px) { #footer #Footer2 { position: absolute; right: 0; } }
