@charset "UTF-8";

.ourMission .exp-01,
.business .exp-01 { font-size:15px;}
.ourMission .more,
.business .viewMore { font-size:15px;}
.contentTitle-01 { font-size:28px;}
.mainVisual-01 .handsLogo .title-01 { font-size:28px;}
.mainVisual-01 .visual-01 .flame.out { filter:alpha(opacity=0); -webkit-opacity:0; -moz-opacity:0; -ms-opacity:0; -o-opacity:0; opacity:0;}
.groupCompanyArea .carouselNav .carouselNavPrev.swiper-button-disabled,
.groupCompanyArea .carouselNav .carouselNavNext.swiper-button-disabled { filter:alpha(opacity=20); -webkit-opacity:.2; -moz-opacity:.2; -ms-opacity:.2; -o-opacity:.2; opacity:.2;}
.groupCompanyArea .carouselNav .carouselNavPrev,
.groupCompanyArea .carouselNav .carouselNavNext { filter:alpha(opacity=60); -webkit-opacity:.6; -moz-opacity:.6; -ms-opacity:.6; -o-opacity:.6; opacity:.6;}
body.pc .groupCompany .banner a:hover,
body.sp .groupCompany .banner a.hover { filter:alpha(opacity=85); -webkit-opacity:.85; -moz-opacity:.85; -ms-opacity:.85; -o-opacity:.85; opacity:.85;}
.groupCompany .banner a { -webkit-transition:opacity 0.4s; -moz-transition:opacity 0.4s; -ms-transition:opacity 0.4s; -o-transition:opacity 0.4s; transition:opacity 0.4s;}
.groupCompany .banner .newWindow { width:.9em; height:.9em; margin-left:.8em; display:inline-block; -webkit-transform:translateY(0.1em); -moz-transform:translateY(0.1em); -ms-transform:translateY(0.1em); -o-transform:translateY(0.1em); transform:translateY(0.1em);}
.groupCompany .banner .newWindow svg { width:100%; height:100%; float:left;}
.business .viewMore a { height:4.7143em; display:flex; justify-content:center; align-items:center;}
.business .viewMore a strong { color:#fff; padding-right:1.55em; position:relative; margin-right:-0.8em; line-height:1.6;}
.business .viewMore a strong:before { content:""; border-style:solid; border-color:#fff; border-width:.1429em .1429em 0 0; display:inline-block; width:.55em; height:.55em; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -ms-transform:rotate(45deg); -o-transform:rotate(45deg); transform:rotate(45deg); position:absolute; right:.2em; top:.55em;}
.ourMission .more a { height:4.7143em; display:flex; justify-content:center; align-items:center;}
.ourMission .more a strong { color:#000; padding-right:1.55em; position:relative; margin-right:-0.8em; line-height:1.6;}
.ourMission .more a strong:before { content:""; border-style:solid; border-color:#000; border-width:.1429em .1429em 0 0; display:inline-block; width:.55em; height:.55em; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -ms-transform:rotate(45deg); -o-transform:rotate(45deg); transform:rotate(45deg); position:absolute; right:.2em; top:.55em;}
.globalHeader>.handsLogo { z-index:2;}
.mainVisual-01 { width:100%; height:100vh; z-index:1;}
.mainVisual-01 .visual-01 { display:flex; justify-content:center; flex-direction:column; align-items:center; width:100%; height:100%; background-image:url(../images/top/mainVisual-01-pc.jpg); background-repeat:no-repeat; background-size:cover; background-position:center center; position:relative;}
.mainVisual-01 .visual-01 .flame { width:100%; height:100%; position:absolute; left:0; top:0; z-index:1;}
.mainVisual-01 .visual-01 .flame.active { z-index:2;}
.mainVisual-01 .visual-01 .flame.out { z-index:3; -webkit-transition:opacity 1s; -moz-transition:opacity 1s; -ms-transition:opacity 1s; -o-transition:opacity 1s; transition:opacity 1s;}
.mainVisual-01 .visual-01 .flame>p { width:100%; height:100%; background-position:center center; background-repeat:no-repeat; background-size:cover;}
.mainVisual-01 .visual-01 .flame>p:nth-of-type(1) { display:none;}
.mainVisual-01 .handsLogo { width:100%; display:flex; justify-content:center; flex-direction:column; align-items:center; position:relative; z-index:3;}
.mainVisual-01 .handsLogo .title-01 { order:2; text-align:center; line-height:2; margin-top:1.8em; width:90%; font-family:"Poppins"; font-weight:500; letter-spacing:.03em;}
body.lang-zh .mainVisual-01 .handsLogo .title-01 { font-family:"Noto Sans SC"; font-weight:500;}
.mainVisual-01 .handsLogo .img-01 { order:1; max-width:259px; width:40%;}
.mainVisual-01 .handsLogo .img-01 img { width:100%; height:auto; float:left;}
.mainVisual-01 .scroll { width:0; left:50%; bottom:0; position:absolute; z-index:3;}
.mainVisual-01 .scroll strong:nth-of-type(1) { white-space:nowrap; line-height:0; width:0; height:0; letter-spacing:.03em; position:absolute; left:.9em; top:0; font-family:"Poppins"; font-weight:600; -webkit-transform:rotate(90deg); -moz-transform:rotate(90deg); -ms-transform:rotate(90deg); -o-transform:rotate(90deg); transform:rotate(90deg);}
.mainVisual-01 .scroll:before,
.mainVisual-01 .scroll:after { content:""; display:block; background-color:#000;}
.mainVisual-01 .scroll:before { width:.45em; height:.45em; position:absolute; left:0; top:-0.45em; border-radius:50%; -webkit-transform:translateX(-50%); -moz-transform:translateX(-50%); -ms-transform:translateX(-50%); -o-transform:translateX(-50%); transform:translateX(-50%);}
.mainVisual-01 .scroll:after { width:1.4px; height:7.5vh; min-height:4.7em; -webkit-transform:translateX(-50%); -moz-transform:translateX(-50%); -ms-transform:translateX(-50%); -o-transform:translateX(-50%); transform:translateX(-50%);}
.contentTitle-01 { display:flex; flex-direction:column; align-items:center; width:100%; font-weight:600;}
.contentTitle-01:after { margin-top:.4em; content:""; display:block; background-color:#1473e6; width:1.4em; height:.1428571429em;}
.ourMission { background:#1e1e1e; width:100%; margin-top:.2rem;}
.ourMission * { color:#fff;}
.ourMission .inner { width:100%; padding-top:8.9286%; padding-bottom:9.375%;}
.ourMission .en { font-family:"Poppins"; font-weight:400;}
.ourMission .title-01 { font-family:"Poppins"; font-weight:500; letter-spacing:.03em; font-size:36px; text-align:center;}
.ourMission .exp-01 { text-align:center; line-height:2; margin-top:1.8em;}
.ourMission .exp-01 .en { font-size:1.18em; letter-spacing:.03em;}
.ourMission .more { margin-top:.4rem; margin-right:auto; margin-left:auto; max-width:22em; width:100%; background:#fff;}
.ourMission .more a { background:#f3a51e; width:100%; -webkit-transition:background .4s; -moz-transition:background .4s; -ms-transition:background .4s; -o-transition:background .4s; transition:background .4s;}
.ourMission .more a strong { font-family:"Poppins"; font-weight:600;}
body.pc .ourMission .more a:hover { background:#f5b340;}
.business { width:100%; background:#e6e6e6; margin-top:.2rem; position:relative;}
.business:before { content:""; display:block; background-color:#d4d4d4; position:absolute; width:100%; left:0; bottom:0; height:44%;}
.business .inner { width:100%; padding-top:16.9643%; padding-bottom:8.9286%;}
.business .contentTitle-01 { padding-bottom:12.5%;}
.business .column-01 { position:relative; width:100%; background:#fff; padding-top:4.4643%; padding-bottom:5%;}
.business .exp-01 { line-height:2; margin-right:auto; margin-left:auto; width:91.0714%; text-align:center;}
.business .viewMore { width:91.0714%; margin-top:.35rem; margin-right:auto; margin-left:auto; display:flex; justify-content:center;}
body.lang-zh .business .viewMore { font-family:"Noto Sans SC"; font-weight:400;}
.business .viewMore a { max-width:22em; width:100%; -webkit-transition:background .4s; -moz-transition:background .4s; -ms-transition:background .4s; -o-transition:background .4s; transition:background .4s; background:#1473e6;}
.business .viewMore a strong { font-family:"Poppins"; font-weight:500;}
body.pc .business .viewMore a:hover { background:#3186ed;}
.groupCompanyArea { padding-top:8.4821%;}
.groupCompanyArea .carouselNav { width:100%; height:0; overflow:hidden; display:flex; justify-content:center; margin-top:-1.6em; top:50%; left:0; position:absolute; z-index:2;}
.groupCompanyArea .carouselNav .navArea { width:95%; display:flex; justify-content:space-between;}
.groupCompanyArea .carouselNav .carouselNavPrev,
.groupCompanyArea .carouselNav .carouselNavNext { width:15.6294%; border-radius:50%; position:relative; overflow:hidden; cursor:pointer;}
.groupCompanyArea .carouselNav .carouselNavPrev svg,
.groupCompanyArea .carouselNav .carouselNavNext svg { width:100%; height:auto; float:left; position:relative;}
.groupCompanyArea .carouselNav .carouselNavPrev.swiper-button-disabled,
.groupCompanyArea .carouselNav .carouselNavNext.swiper-button-disabled { overflow:visible; cursor:default;}
.groupCompanyArea .carouselNav .carouselNavPrev:before,
.groupCompanyArea .carouselNav .carouselNavNext:before { content:""; display:block; background-color:#fff; width:100%; height:100%; position:absolute; left:0; top:0;}
.groupCompany { overflow:hidden; padding-top:6.5179%; width:100%;}
.groupCompany .inner { width:100%; overflow:hidden;}
.groupCompany .banner { width:calc(100% / 3); float:left;}
.groupCompany .banner a { width:100%; float:left;}
.groupCompany .banner figure { width:100%; overflow:hidden;}
.groupCompany .banner figure img { width:100%; height:auto; float:left;}
.groupCompany .banner .company { width:100%; text-align:center; margin-top:1.1em; font-weight:500;}
.groupCompany .banner.t .newWindow svg { fill:#056a38;}
.groupCompany .banner.h .newWindow svg { fill:#0d6fb8;}
.groupCompany .banner.d .newWindow svg { fill:#c30d23;}

@media (max-width:1200px) {
.mainVisual-01 .visual-01 { background-position:left 35% top 50%;}
}

@media (max-width:828px) {
.business .viewMore a { height:3.33em;}
.ourMission .more a { height:3.33em;}
.mainVisual-01 .visual-01 .flame>p:nth-of-type(1) { display:block;}
.mainVisual-01 .visual-01 .flame>p:nth-of-type(2) { display:none;}
.mainVisual-01 .visual-01 { background-image:url(../images/top/mainVisual-01-sp.jpg);}
.mainVisual-01 .handsLogo .img-01 { max-width:300px; width:36.2319%;}
.mainVisual-01 .scroll strong:nth-of-type(1) { top:.2em; left:1.2em;}
.mainVisual-01 .scroll:before { width:.7em; height:.7em;}
.mainVisual-01 .scroll:after { height:10vh; max-height:195px;}
.contentTitle-01:after { margin-top:.25em;}
.ourMission .inner { padding-top:21.4707%; padding-bottom:21.4707%;}
.ourMission .exp-01 { font-size:11px;}
.ourMission .more { max-width:13.3em; margin-top:.65rem;}
.ourMission .more a strong { padding-right:1.3em; margin-left:-0.5em;}
.ourMission .more a strong:before { font-size:.85em; top:.65em;}
.business:before { height:40.5%;}
.business .inner { padding-top:16.774%; padding-bottom:9.6618%;}
.business .column-01 { padding-top:6.7096%; padding-bottom:8.4541%;}
.business .exp-01 { width:85%; text-align:left; text-align:justify; text-justify:inter-ideograph; word-break:break-all;}
.business .viewMore { width:100%; max-width:13.3em; margin-top:.4rem;}
.business .viewMore a { max-width:none;}
.business .viewMore a strong { padding-right:1.3em; margin-left:-0.5em;}
.business .viewMore a strong:before { font-size:.85em; top:.65em;}
.groupCompanyArea { padding-top:16.774%; padding-bottom:0;}
.groupCompanyArea .carouselNav { height:auto;}
.groupCompany { padding-top:9.6618%;}
.groupCompany .inner { overflow:visible;}
.groupCompany .banner a { display:block; float:none; overflow:hidden; width:93%; margin-right:auto; margin-left:auto;}
.groupCompany .banner .company { line-height:1.4; margin-top:.7em;}
}

@media (max-width:828px) and (max-height:800px) {
.mainVisual-01 .scroll:after { min-height:8.5em; max-height:8.5em;}
}

@media (max-width:600px) {
.business .exp-01 { line-height:1.8;}
}

@media (max-width:450px) {
.mainVisual-01 .handsLogo .title-01 { margin-top:1.53em;}
.business .column-01 { padding-top:8.0515%; padding-bottom:9.7222%;}
}

@media (max-width:400px) {
.business .viewMore a strong { margin-right:-0.5em;}
.ourMission .more a strong { margin-right:-0.5em;}
.mainVisual-01 .handsLogo .title-01 { margin-top:1.26em;}
}

@media (max-width:350px) {
body.lang-ja .groupCompany .banner .company { font-size:13px;}
.ourMission .title-01 { font-size:24px;}
.mainVisual-01 .scroll strong:nth-of-type(1) { font-size:10px;}
.ourMission .exp-01 { font-size:11px;}
.ourMission .more,
.business .exp-01,
.business .viewMore,
.groupCompanyArea .carouselNav,
.groupCompany .banner .company { font-size:13px;}
.mainVisual-01 .handsLogo .title-01 { font-size:14px;}
.contentTitle-01 { font-size:15px;}
}

@media (min-width:829px) and (max-width:1244px) {
.ourMission .exp-01,
.business .exp-01 { font-size:calc(11px + ((1vw - 8.28px) * 0.9615));}
.ourMission .more,
.business .viewMore { font-size:calc(13px + ((1vw - 8.28px) * 0.4808));}
.contentTitle-01 { font-size:calc(20px + ((1vw - 8.28px) * 1.9231));}
.mainVisual-01 .handsLogo .title-01 { font-size:calc(19px + ((1vw - 8.28px) * 2.1635));}
}

@media (min-width:351px) and (max-width:828px) {
body.lang-ja .groupCompany .banner .company { font-size:calc(13px + ((1vw - 3.5px) * 2.5105));}
.ourMission .title-01 { font-size:calc(24px + ((1vw - 3.5px) * 4.6025));}
.mainVisual-01 .scroll strong:nth-of-type(1) { font-size:calc(10px + ((1vw - 3.5px) * 1.6736));}
.ourMission .exp-01 { font-size:calc(11px + ((1vw - 3.5px) * 3.3473));}
.ourMission .more,
.business .exp-01,
.business .viewMore,
.groupCompanyArea .carouselNav,
.groupCompany .banner .company { font-size:calc(13px + ((1vw - 3.5px) * 3.5565));}
.mainVisual-01 .handsLogo .title-01 { font-size:calc(14px + ((1vw - 3.5px) * 3.7657));}
.contentTitle-01 { font-size:calc(15px + ((1vw - 3.5px) * 4.3933));}
}

@media (max-height:650px) {
.mainVisual-01 .handsLogo .title-01 { -webkit-transform-origin:center top; -moz-transform-origin:center top; -ms-transform-origin:center top; -o-transform-origin:center top; transform-origin:center top; -webkit-transform:scale(0.85); -moz-transform:scale(0.85); -ms-transform:scale(0.85); -o-transform:scale(0.85); transform:scale(0.85);}
.mainVisual-01 .handsLogo .img-01 { max-width:220px;}
}