@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&display=swap");

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

body {
    line-height: 1;
    overflow-x: hidden
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none
}

table {
    border-spacing: 0;
    border-collapse: collapse
}

body,
html {
    margin: 0px;
    width: 100%;
    padding: 0px;
    height: 100%;
    font-size: 16px;
    font-weight: 300;
    position: relative;
    font-family: 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, YuGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, sans-serif
}

.clearFix {
    clear: both;
    float: none !important
}

.hide {
    display: none
}

.noScroll {
    overflow: hidden
}

.cage {
    margin: 0 auto;
    padding: 0 20px
}

.flex {
    display: flex;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex
}

.flexC {
    display: flex;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.animate {
    transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out
}

input,
select,
textarea {
    border: 0;
    width: 100%;
    display: block;
    border-radius: 0;
    font-size: 0.85rem;
    padding: 15px 15px;
    letter-spacing: 1px;
    border-style: solid;
    background: transparent;
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
    border-bottom: 1px solid #cccccc
}

input :focus,
select :focus,
textarea :focus {
    outline: none;
    outline-style: none;
    outline-color: transparent
}

a {
    text-decoration: none
}

.checkbox {
    margin: 0 15px 25px 0;
    display: inline-block
}

.checkbox [type=checkbox]:checked,
.checkbox [type=checkbox]:not(:checked) {
    left: -9999px;
    position: absolute
}

.checkbox [type=checkbox]:checked+label,
.checkbox [type=checkbox]:not(:checked)+label {
    color: #818181;
    cursor: pointer;
    position: relative;
    padding-left: 25px;
    font-size: 0.8rem
}

.checkbox [type=checkbox]:checked+label:before,
.checkbox [type=checkbox]:not(:checked)+label:before {
    left: 0;
    top: 0;
    content: "";
    width: 14px;
    height: 14px;
    position: absolute;
    border: 1px solid #cccccc
}

.checkbox [type=checkbox]:checked+label:after,
.checkbox [type=checkbox]:not(:checked)+label:after {
    left: 0;
    top: -2px;
    position: absolute;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    content: url("../img/check.webp")
}

.checkbox [type=checkbox]:not(:checked)+label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0)
}

.checkbox [type=checkbox]:checked+label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

@font-face {
    font-family: "IBMPlexSans-Bold";
    src: url("../fonts/IBMPlexSans-Bold.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "IBMPlexSans-Medium";
    src: url("../fonts/IBMPlexSans-Medium.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "IBMPlexSans-Light";
    src: url("../fonts/IBMPlexSans-Light.ttf") format("truetype");
    font-weight: bold;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "NotoSansJP-Bold";
    src: url("../fonts/NotoSansJP-Bold.otf") format("otf");
    font-weight: 700;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

@font-face {
    font-family: "Noto Sans JP";
    font-weight: 500;
    font-style: normal;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

@font-face {
    font-family: "NotoSansCJKjp-DemiLight";
    src: url("../fonts/NotoSansCJKjp-DemiLight.otf") format("otf");
    font-weight: normal;
    font-style: normal;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt"
}

@font-face {
    font-family: "NotoSansJP-Light";
    src: url("../NotoSansJP-Light.otf") format("otf");
    font-weight: normal;
    font-style: normal;
    font-display: swap
}

.fontEN_B {
    font-family: "Helvetica Neue", Helvetica, "IBM Plex Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    font-weight: bold;
    font-style: normal
}

.fontEN_M {
    font-family: "HelveticaNeue-Medium", "Helvetica Neue Medium", "Helvetica Neue", Helvetica, "IBMPlexSans-Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    font-style: normal;
    font-weight: medium
}

.fontEN_L {
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", Helvetica, "IBMPlexSans-Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    font-style: normal;
    letter-spacing: 0.02em
}

.fontJP_B {
    font-family: "NotoSansJP-Bold", "Yu Gothic Medium", "Yu Gothic", sans-serif;
    font-style: normal
}

.fontJP_DL {
    font-family: "NotoSansCJKjp-DemiLight", "Yu Gothic Medium", "Yu Gothic", sans-serif;
    font-style: normal
}

.fontJP_M {
    font-family: "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", sans-serif;
    font-style: normal;
    font-weight: 500
}

.fontJP {
    font-family: "NotoSansJP-Light", "Yu Gothic Medium", "Yu Gothic", sans-serif;
    font-style: normal
}

.white {
    color: #FFFFFF !important
}

.navy {
    color: #003472 !important
}

.blue {
    color: #24abe4 !important
}

.black {
    color: #111741 !important
}

.pc {
    display: block
}

.sp {
    display: none
}

.tb {
    display: none
}

.pctb {
    display: block
}

.pcsp {
    display: block
}

.tbsp {
    display: none
}

.deviceHeight {
    height: 100vh;
    height: calc(var(--vh) * 100)
}

.deviceMaxWidth {
    max-width: 1680px;
    width: 95%;
    margin: 0 auto
}

.clickNone {
    pointer-events: none
}

html {
    height: 100%;
    font-size: 69.4%;
    font-size: 0.694vw
}

body {
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s;
    height: 100%;
    font-family: "NotoSansCJKjp-DemiLight", "Yu Gothic Medium", "Yu Gothic", sans-serif;
    font-size: 1.6rem;
    line-height: 3.2rem;
    color: #111741
}

body.fadeAnim {
    -webkit-filter: blur(0.5rem);
    filter: blur(0.5rem);
    opacity: 0;
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s
}

body::-webkit-scrollbar {
    overflow: hidden;
    width: 8px;
    background: #fafafa;
    height: 8px
}

body::-webkit-scrollbar-button {
    display: none
}

body::-webkit-scrollbar-piece {
    background: #eee
}

body::-webkit-scrollbar-piece:start {
    background: #eee
}

body::-webkit-scrollbar-corner,
body::-webkit-scrollbar-thumb {
    background: #003472
}

body.active {
    overflow: hidden
}

body #wrapper {
    overflow: hidden;
    position: relative;
    z-index: 1;
    -webkit-transition: 1.5s;
    -o-transition: 1.5s;
    transition: 1.5s;
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

body main {
    position: relative;
    z-index: 3;
    background-color: #FFFFFF
}

body section {
    overflow: hidden;
    position: relative
}

body .widthL {
    max-width: 124rem;
    width: 86%;
    margin: 0 auto
}

body .widthM {
    max-width: 108.55rem;
    width: 75%;
    margin: 0 auto
}

body .widthS {
    max-width: 93rem;
    width: 70%;
    margin: 0 auto
}

body .design {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0.5;
    z-index: 100
}

body .design img {
    width: 100%
}

img {
    width: 100%;
    height: auto;
    vertical-align: top;
    -o-object-fit: cover;
    object-fit: cover
}

img.h100 {
    height: 100%
}

p {
    word-wrap: break-word
}

a {
    display: inline-block;
    tap-highlight-color: rgba(0, 0, 0, 0.1);
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
    color: #111741
}

@media (hover:hover) and (pointer:fine) {
    a:hover {
        cursor: pointer
    }
}

.space {
    width: 1.5rem
}

.gradientL {
    background: -o-linear-gradient(right, #1c9bda, #004a93);
    background: -webkit-gradient(linear, right top, left top, from(#1c9bda), to(#004a93));
    background: linear-gradient(to left, #1c9bda, #004a93)
}

.gradientR {
    background: -o-linear-gradient(left, #1c9bda, #004a93);
    background: -webkit-gradient(linear, left top, right top, from(#1c9bda), to(#004a93));
    background: linear-gradient(to right, #1c9bda, #004a93)
}

.gradientB {
    background: -o-linear-gradient(top, #1c9bda, #004a93);
    background: -webkit-gradient(linear, left top, left bottom, from(#1c9bda), to(#004a93));
    background: linear-gradient(to bottom, #1c9bda, #004a93)
}

.gradientC {
    background: -o-linear-gradient(left, #1c9bda, #004a93, #1c9bda);
    background: -webkit-gradient(linear, left top, right top, from(#1c9bda), color-stop(#004a93), to(#1c9bda));
    background: linear-gradient(to right, #1c9bda, #004a93, #1c9bda)
}

.viewMore {
    position: absolute;
    width: 29rem;
    height: 8.2rem;
    background: -o-linear-gradient(left, #1c9bda, #004a93);
    background: -webkit-gradient(linear, left top, right top, from(#1c9bda), to(#004a93));
    background: linear-gradient(to right, #1c9bda, #004a93);
    color: #FFFFFF;
    padding: 2.6rem 2.5rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    font-size: 2rem
}

.viewMore:after {
    content: "";
    display: block;
    width: 5.5rem;
    height: 5.5rem;
    background-image: url("../img/viewmore.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 2rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.viewMore:hover:after {
    -webkit-transform: translate(0.8rem, -50%);
    -ms-transform: translate(0.8rem, -50%);
    transform: translate(0.8rem, -50%)
}

#KV .imgHolder {
    position: fixed;
    width: 100%;
    height: 50rem;
    top: 0;
    left: 0;
    z-index: -1
}

#KV .imgHolder .imgFilter {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.15)
}

#KV .imgHolder .img {
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: cover;
    background-position: center;
    z-index: -3;
    -webkit-animation: KVanim 60s linear infinite;
    animation: KVanim 60s linear infinite
}

#KV .imgHolder.people .img {
    -webkit-animation: none;
    animation: none
}

@-webkit-keyframes copyAnim {

    0%,
    30% {
        -webkit-transform: scale(100%) rotateX(45deg);
        transform: scale(100%) rotateX(45deg);
        opacity: 0;
        -webkit-filter: blur(1rem);
        filter: blur(1rem)
    }

    99.9%,
    to {
        -webkit-transform: scale(100%) rotateX(0);
        transform: scale(100%) rotateX(0);
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0)
    }
}

@keyframes copyAnim {

    0%,
    30% {
        -webkit-transform: scale(100%) rotateX(45deg);
        transform: scale(100%) rotateX(45deg);
        opacity: 0;
        -webkit-filter: blur(1rem);
        filter: blur(1rem)
    }

    99.9%,
    to {
        -webkit-transform: scale(100%) rotateX(0);
        transform: scale(100%) rotateX(0);
        opacity: 1;
        -webkit-filter: blur(0);
        filter: blur(0)
    }
}

@-webkit-keyframes ttlAnim {

    0%,
    30% {
        -webkit-transform: scale(100%) translateY(100%);
        transform: scale(100%) translateY(100%);
        opacity: 0
    }

    99.9%,
    to {
        -webkit-transform: scale(100%) translateY(0);
        transform: scale(100%) translateY(0);
        opacity: 1
    }
}

@keyframes ttlAnim {

    0%,
    30% {
        -webkit-transform: scale(100%) translateY(100%);
        transform: scale(100%) translateY(100%);
        opacity: 0
    }

    99.9%,
    to {
        -webkit-transform: scale(100%) translateY(0);
        transform: scale(100%) translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes fadeIn {

    0%,
    30% {
        -webkit-filter: blur(0.4rem);
        filter: blur(0.4rem);
        opacity: 0
    }

    99.9%,
    to {
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@keyframes fadeIn {

    0%,
    30% {
        -webkit-filter: blur(0.4rem);
        filter: blur(0.4rem);
        opacity: 0
    }

    99.9%,
    to {
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@-webkit-keyframes scroll {

    0%,
    30% {
        -webkit-transform: translate(-50%, -400%);
        transform: translate(-50%, -400%);
        -webkit-filter: blur(0.4rem);
        filter: blur(0.4rem);
        opactiy: 0
    }

    99.9%,
    to {
        -webkit-transform: translate(-50%, -290%);
        transform: translate(-50%, -290%);
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@keyframes scroll {

    0%,
    30% {
        -webkit-transform: translate(-50%, -400%);
        transform: translate(-50%, -400%);
        -webkit-filter: blur(0.4rem);
        filter: blur(0.4rem);
        opactiy: 0
    }

    99.9%,
    to {
        -webkit-transform: translate(-50%, -290%);
        transform: translate(-50%, -290%);
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@-webkit-keyframes KVanim {

    0%,
    to {
        -webkit-transform: translate(7.5%, 0) scale(1.15);
        transform: translate(7.5%, 0) scale(1.15)
    }

    50% {
        -webkit-transform: translate(-7.5%, 0) scale(1.15);
        transform: translate(-7.5%, 0) scale(1.15)
    }
}

@keyframes KVanim {

    0%,
    to {
        -webkit-transform: translate(7.5%, 0) scale(1.15);
        transform: translate(7.5%, 0) scale(1.15)
    }

    50% {
        -webkit-transform: translate(-7.5%, 0) scale(1.15);
        transform: translate(-7.5%, 0) scale(1.15)
    }
}

.copyAnim {
    overflow: hidden;
    -webkit-transition: none;
    -o-transition: none;
    transition: none
}

.copyAnim span {
    opacity: 0;
    display: inline-block
}

.copyAnim.show span:first-child {
    -webkit-animation: copyAnim 1s 0.04s forwards;
    animation: copyAnim 1s 0.04s forwards
}

.copyAnim.show span:nth-child(2) {
    -webkit-animation: copyAnim 1s 0.08s forwards;
    animation: copyAnim 1s 0.08s forwards
}

.copyAnim.show span:nth-child(3) {
    -webkit-animation: copyAnim 1s 0.12s forwards;
    animation: copyAnim 1s 0.12s forwards
}

.copyAnim.show span:nth-child(4) {
    -webkit-animation: copyAnim 1s 0.16s forwards;
    animation: copyAnim 1s 0.16s forwards
}

.copyAnim.show span:nth-child(5) {
    -webkit-animation: copyAnim 1s 0.2s forwards;
    animation: copyAnim 1s 0.2s forwards
}

.copyAnim.show span:nth-child(6) {
    -webkit-animation: copyAnim 1s 0.24s forwards;
    animation: copyAnim 1s 0.24s forwards
}

.copyAnim.show span:nth-child(7) {
    -webkit-animation: copyAnim 1s 0.28s forwards;
    animation: copyAnim 1s 0.28s forwards
}

.copyAnim.show span:nth-child(8) {
    -webkit-animation: copyAnim 1s 0.32s forwards;
    animation: copyAnim 1s 0.32s forwards
}

.copyAnim.show span:nth-child(9) {
    -webkit-animation: copyAnim 1s 0.36s forwards;
    animation: copyAnim 1s 0.36s forwards
}

.copyAnim.show span:nth-child(10) {
    -webkit-animation: copyAnim 1s 0.4s forwards;
    animation: copyAnim 1s 0.4s forwards
}

.copyAnim.show span:nth-child(11) {
    -webkit-animation: copyAnim 1s 0.44s forwards;
    animation: copyAnim 1s 0.44s forwards
}

.copyAnim.show span:nth-child(12) {
    -webkit-animation: copyAnim 1s 0.48s forwards;
    animation: copyAnim 1s 0.48s forwards
}

.copyAnim.show span:nth-child(13) {
    -webkit-animation: copyAnim 1s 0.52s forwards;
    animation: copyAnim 1s 0.52s forwards
}

.copyAnim.show span:nth-child(14) {
    -webkit-animation: copyAnim 1s 0.56s forwards;
    animation: copyAnim 1s 0.56s forwards
}

.copyAnim.show span:nth-child(15) {
    -webkit-animation: copyAnim 1s 0.6s forwards;
    animation: copyAnim 1s 0.6s forwards
}

.copyAnim.show span:nth-child(16) {
    -webkit-animation: copyAnim 1s 0.64s forwards;
    animation: copyAnim 1s 0.64s forwards
}

.copyAnim.show span:nth-child(17) {
    -webkit-animation: copyAnim 1s 0.68s forwards;
    animation: copyAnim 1s 0.68s forwards
}

.copyAnim.show span:nth-child(18) {
    -webkit-animation: copyAnim 1s 0.72s forwards;
    animation: copyAnim 1s 0.72s forwards
}

.copyAnim.show span:nth-child(19) {
    -webkit-animation: copyAnim 1s 0.76s forwards;
    animation: copyAnim 1s 0.76s forwards
}

.copyAnim.show span:nth-child(20) {
    -webkit-animation: copyAnim 1s 0.8s forwards;
    animation: copyAnim 1s 0.8s forwards
}

.ttlAnim {
    overflow: hidden;
    -webkit-transition: none;
    -o-transition: none;
    transition: none
}

.ttlAnim span {
    opacity: 0;
    display: inline-block
}

.ttlAnim.show span:first-child {
    -webkit-animation: ttlAnim 0.6s 0.04s forwards;
    animation: ttlAnim 0.6s 0.04s forwards
}

.ttlAnim.show span:nth-child(2) {
    -webkit-animation: ttlAnim 0.6s 0.08s forwards;
    animation: ttlAnim 0.6s 0.08s forwards
}

.ttlAnim.show span:nth-child(3) {
    -webkit-animation: ttlAnim 0.6s 0.12s forwards;
    animation: ttlAnim 0.6s 0.12s forwards
}

.ttlAnim.show span:nth-child(4) {
    -webkit-animation: ttlAnim 0.6s 0.16s forwards;
    animation: ttlAnim 0.6s 0.16s forwards
}

.ttlAnim.show span:nth-child(5) {
    -webkit-animation: ttlAnim 0.6s 0.2s forwards;
    animation: ttlAnim 0.6s 0.2s forwards
}

.ttlAnim.show span:nth-child(6) {
    -webkit-animation: ttlAnim 0.6s 0.24s forwards;
    animation: ttlAnim 0.6s 0.24s forwards
}

.ttlAnim.show span:nth-child(7) {
    -webkit-animation: ttlAnim 0.6s 0.28s forwards;
    animation: ttlAnim 0.6s 0.28s forwards
}

.ttlAnim.show span:nth-child(8) {
    -webkit-animation: ttlAnim 0.6s 0.32s forwards;
    animation: ttlAnim 0.6s 0.32s forwards
}

.ttlAnim.show span:nth-child(9) {
    -webkit-animation: ttlAnim 0.6s 0.36s forwards;
    animation: ttlAnim 0.6s 0.36s forwards
}

.ttlAnim.show span:nth-child(10) {
    -webkit-animation: ttlAnim 0.6s 0.4s forwards;
    animation: ttlAnim 0.6s 0.4s forwards
}

.ttlAnim.show span:nth-child(11) {
    -webkit-animation: ttlAnim 0.6s 0.44s forwards;
    animation: ttlAnim 0.6s 0.44s forwards
}

.ttlAnim.show span:nth-child(12) {
    -webkit-animation: ttlAnim 0.6s 0.48s forwards;
    animation: ttlAnim 0.6s 0.48s forwards
}

.ttlAnim.show span:nth-child(13) {
    -webkit-animation: ttlAnim 0.6s 0.52s forwards;
    animation: ttlAnim 0.6s 0.52s forwards
}

.ttlAnim.show span:nth-child(14) {
    -webkit-animation: ttlAnim 0.6s 0.56s forwards;
    animation: ttlAnim 0.6s 0.56s forwards
}

.ttlAnim.show span:nth-child(15) {
    -webkit-animation: ttlAnim 0.6s 0.6s forwards;
    animation: ttlAnim 0.6s 0.6s forwards
}

.ttlAnim.show span:nth-child(16) {
    -webkit-animation: ttlAnim 0.6s 0.64s forwards;
    animation: ttlAnim 0.6s 0.64s forwards
}

.ttlAnim.show span:nth-child(17) {
    -webkit-animation: ttlAnim 0.6s 0.68s forwards;
    animation: ttlAnim 0.6s 0.68s forwards
}

.ttlAnim.show span:nth-child(18) {
    -webkit-animation: ttlAnim 0.6s 0.72s forwards;
    animation: ttlAnim 0.6s 0.72s forwards
}

.ttlAnim.show span:nth-child(19) {
    -webkit-animation: ttlAnim 0.6s 0.76s forwards;
    animation: ttlAnim 0.6s 0.76s forwards
}

.ttlAnim.show span:nth-child(20) {
    -webkit-animation: ttlAnim 0.6s 0.8s forwards;
    animation: ttlAnim 0.6s 0.8s forwards
}

header {
    position: fixed;
    z-index: 10
}

header .headerArea {
    width: 100vw;
    height: 7.5rem;
    z-index: 3;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-color: #FFFFFF;
    padding-right: 8px
}

header .headerArea .logoArea {
    height: 100%;
    padding: 0 0 0 3.5rem;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

header .headerArea .logoArea:hover {
    opacity: 0.6
}

header .headerArea .logoArea img {
    width: 18.8rem
}

header .headerArea .logoArea span {
    width: 1px;
    height: 3.3rem;
    background-color: #111741;
    margin: 0 2rem;
    opacity: 0.6
}

header .headerArea .logoArea .text {
    font-size: 1.765rem
}

header .menuArea {
    font-size: 1.4rem;
    height: 100%
}

header .menuArea .pcMenu {
    height: 100%
}

header .menuArea .pcMenu ul {
    height: 100%
}

header .menuArea .pcMenu ul li {
    height: 100%;
    margin: auto 3rem auto 0;
    cursor: pointer;
    position: relative;
    z-index: 2
}

header .menuArea .pcMenu ul li .mainPullDown,
header .menuArea .pcMenu ul li a {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    line-height: 7.5rem;
    position: relative;
    z-index: 2;
    background-color: #FFFFFF
}

header .menuArea .pcMenu ul li .mainPullDown:hover,
header .menuArea .pcMenu ul li a:hover {
    color: #24abe4
}

header .menuArea .pcMenu ul li .mainList {
    display: block;
    position: absolute;
    width: calc(100% + 2rem);
    top: 0;
    left: 0;
    -webkit-transform: translate(-1rem, -17rem);
    -ms-transform: translate(-1rem, -17rem);
    transform: translate(-1rem, -17rem);
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    z-index: 1
}

header .menuArea .pcMenu ul li .mainList li {
    background-color: #FFFFFF;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 4.2rem;
    border-bottom: 1px solid #dddde4;
    position: relative;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    padding: 0 1rem
}

header .menuArea .pcMenu ul li .mainList li.tworow {
    height: auto
}

header .menuArea .pcMenu ul li .mainList li.tworow a {
    line-height: 140%;
    padding: 1rem 0
}

header .menuArea .pcMenu ul li .mainList li a {
    background-color: none;
    text-align: center;
    display: block;
    line-height: 4.2rem;
    width: 100%;
    height: 100%;
    padding: 0
}

header .menuArea .pcMenu ul li .mainList li:last-child {
    border-bottom: none
}

header .menuArea .pcMenu ul li .mainList li:hover {
    color: #24abe4
}

header .menuArea .pcMenu ul li .mainList li:hover a {
    color: #24abe4
}

header .menuArea .pcMenu ul li:hover {
    pointer: cursor
}

header .menuArea .pcMenu ul li:hover .mainList {
    -webkit-transform: translate(-1rem, 7.5rem);
    -ms-transform: translate(-1rem, 7.5rem);
    transform: translate(-1rem, 7.5rem)
}

header .menuArea .entryArea {
    width: 17.7rem;
    height: 100%;
    position: relative
}

header .menuArea .entryArea .pullDown {
    width: 100%;
    height: 100%;
    background-color: #003472;
    color: #FFFFFF;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 0.8rem 0 0;
    cursor: pointer;
    z-index: 2
}

header .menuArea .entryArea .pullDown:after {
    content: "";
    display: block;
    background-image: url("../img/pullDown.webp");
    background-repeat: none;
    background-size: contain;
    background-position: center;
    width: 1rem;
    height: 0.6rem;
    position: absolute;
    top: 50%;
    right: 1.8rem;
    -webkit-transform: translateY(-50%) scale(1, -1);
    -ms-transform: translateY(-50%) scale(1, -1);
    transform: translateY(-50%) scale(1, -1);
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

header .menuArea .entryArea .entryList {
    display: block;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateY(-17rem);
    -ms-transform: translateY(-17rem);
    transform: translateY(-17rem);
    background-color: #f4f4f6;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    z-index: 1
}

header .menuArea .entryArea .entryList li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 4.2rem;
    border-bottom: 1px solid #dddde4;
    position: relative;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

header .menuArea .entryArea .entryList li a {
    display: block;
    line-height: 4.2rem;
    width: 100%;
    height: 100%;
    padding: 0 2.8rem 0
}

header .menuArea .entryArea .entryList li:after {
    content: "";
    display: block;
    position: absolute;
    width: 1.2rem;
    height: 1.2rem;
    background-image: url("../img/newpage.webp");
    background-size: contain;
    background-repeat: none;
    top: 50%;
    right: 2.8rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

header .menuArea .entryArea .entryList li:last-child {
    border-bottom: none
}

header .menuArea .entryArea .entryList li:hover {
    background-color: #003472;
    color: #FFFFFF
}

header .menuArea .entryArea .entryList li:hover a {
    color: #FFFFFF
}

header .menuArea .entryArea .entryList li:hover:after {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

header .menuArea .entryArea:hover {
    pointer: cursor
}

header .menuArea .entryArea.active .pullDown:after {
    -webkit-transform: translateY(-50%) scale(1, 1);
    -ms-transform: translateY(-50%) scale(1, 1);
    transform: translateY(-50%) scale(1, 1)
}

header .menuArea .entryArea.active .entryList {
    -webkit-transform: translateY(7.5rem);
    -ms-transform: translateY(7.5rem);
    transform: translateY(7.5rem)
}

header .menuArea .menubar {
    display: block;
    position: relative;
    width: 7.5rem;
    height: 7.5rem;
    background-color: #24abe4;
    cursor: pointer
}

header .menuArea .menubar .line {
    position: absolute;
    width: 3.3rem;
    height: 1px;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -o-transform-origin: center;
    background-color: #FFFFFF;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

header .menuArea .menubar .line:after,
header .menuArea .menubar .line:before {
    content: "";
    display: block;
    width: 3.3rem;
    height: 1px;
    background-color: #FFFFFF;
    position: absolute;
    opacity: 1;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

header .menuArea .menubar .line:before {
    -webkit-transform: translateY(-0.7rem);
    -ms-transform: translateY(-0.7rem);
    transform: translateY(-0.7rem)
}

header .menuArea .menubar .line:after {
    -webkit-transform: translateY(0.7rem);
    -ms-transform: translateY(0.7rem);
    transform: translateY(0.7rem)
}

header .menuArea .menubar.active .line {
    -webkit-transform: translateX(-1.65rem) rotate(135deg);
    -ms-transform: translateX(-1.65rem) rotate(135deg);
    transform: translateX(-1.65rem) rotate(135deg)
}

header .menuArea .menubar.active .line:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 1
}

header .menuArea .menubar.active .line:after {
    opacity: 0
}

header .fullMenu {
    position: fixed;
    top: 7.5rem;
    left: 0;
    z-index: 2;
    width: 100vw;
    height: calc(100vh - 7.5rem);
    overflow: hidden;
    background-color: #f4f4f6;
    -webkit-transform: translateX(100vw);
    -ms-transform: translateX(100vw);
    transform: translateX(100vw);
    opacity: 0;
    -webkit-transition: 0.8s;
    -o-transition: 0.8s;
    transition: 0.8s
}

header .fullMenu .imgArea {
    width: 39.34rem;
    height: 100%;
    background-image: url("../img/menu/temp.webp");
    background-size: cover;
    position: center
}

header .fullMenu .navArea {
    width: calc(100vw - 39.34rem);
    height: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

header .fullMenu .navArea dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

header .fullMenu .navArea dl dt {
    color: #24abe4;
    font-size: 2.3rem;
    padding: 0 0 1.8rem;
    margin: 4rem 0 0
}

header .fullMenu .navArea dl dt a {
    color: #24abe4;
    -webkit-transition: 0.4;
    -o-transition: 0.4;
    transition: 0.4
}

header .fullMenu .navArea dl dt a:hover {
    opacity: 0.6
}

header .fullMenu .navArea dl dt:first-child {
    margin: 0
}

header .fullMenu .navArea dl dd {
    font-size: 1.4rem;
    line-height: 2.8rem;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

header .fullMenu .navArea dl dd a {
    display: inline-block;
    position: relative
}

header .fullMenu .navArea dl dd a:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 0.8rem;
    bottom: 0.3rem;
    background-color: rgba(36, 171, 228, 0.2);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    -webkit-transform: scale(0, 1);
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left
}

header .fullMenu .navArea dl dd a:hover:after {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}

header .fullMenu .navArea dl a {
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

header .fullMenu .navArea dl:first-child {
    margin: 0 6.6rem 0 0
}

header .fullMenu.active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
}

header #scrollTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    z-index: 1;
    opacity: 0;
    visibility: hidden
}

header #scrollTop img {
    width: 6.7rem;
    height: 6.7rem
}

header #scrollTop.show {
    opacity: 1;
    visibility: visible
}

header #scrollTop:hover {
    opacity: 0.6
}

.swiper {
    width: 100%;
    overflow: hidden
}

.swiper .swiper-wrapper {
    width: 100%;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear
}

.swiper .swiper-slide {
    width: 29.25rem;
    padding: 0
}

.swiper .swiper-slide .memberBlock {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper .swiper-slide .memberBlock .imgArea {
    width: 100%;
    margin: 0 0 2.7rem;
    position: relative;
    overflow: hidden
}

.swiper .swiper-slide .memberBlock .imgArea img {
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

.swiper .swiper-slide .memberBlock .imgArea:after {
    content: "";
    display: block;
    background-image: url("../img/memberHover.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    width: 5.45rem;
    height: 5.45rem;
    bottom: 0;
    right: 0;
    opacity: 0;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.swiper .swiper-slide .memberBlock .dep span {
    height: 2.75rem;
    display: inline-block;
    padding: 0.8rem 1.5rem 2.2rem;
    line-height: 100%;
    background-color: #003472
}

.swiper .swiper-slide .memberBlock .career {
    margin: 0 0 0.5rem
}

.swiper .swiper-slide .memberBlock .tags {
    padding: 0
}

.swiper .swiper-slide .memberBlock .tags span {
    font-size: 1.4rem;
    line-height: 100%;
    margin: 0 1.5rem 0 0
}

.swiper .swiper-slide .memberBlock .tags span:before {
    content: "#";
    display: inline-block
}

.swiper .swiper-slide .memberBlock .tags span:last-child {
    margin: 0
}

.swiper .swiper-slide .memberBlock:hover .imgArea img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

.swiper .swiper-slide .memberBlock:hover .imgArea:after {
    opacity: 1
}

.scrollArea {
    position: relative;
    width: 100%;
    margin: 5.5rem auto 0
}

.scrollArea .swiper-button-next,
.scrollArea .swiper-button-prev {
    width: 1.55rem;
    height: 2.8rem;
    background-image: url("../img/swiperArrow.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 1.1rem;
    right: 0
}

.scrollArea .swiper-button-next:after,
.scrollArea .swiper-button-prev:after {
    display: none
}

.scrollArea .swiper-button-prev {
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
    left: 0;
    right: initial
}

.scrollArea .swiper-scrollbar {
    position: relative;
    margin-top: 10px;
    width: 90%;
    margin: 0 auto
}

.scrollArea .swiper-scrollbar .drag {
    background-color: #24abe4;
    height: 0.35rem;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear
}

.scrollArea .swiper-scrollbar:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    margin: auto;
    height: 0.35rem;
    background-color: rgba(36, 171, 228, 0.2)
}

#topPage .Section {
    padding: 15rem 0 23.9rem;
    position: relative
}

#topPage h3 {
    position: absolute;
    top: 15.75rem;
    left: 10rem;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: 3rem;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    z-index: 2
}

#topPage h3:after {
    content: "";
    display: block;
    background-color: #003472;
    position: absolute;
    width: 1px;
    height: 26.5rem;
    top: calc(100% + 2.8rem);
    left: 50%
}

#topPage h2 {
    font-size: 6rem;
    line-height: 120%;
    color: #003472;
    margin: 0 0 6.7rem
}

#topPage .Contents {
    margin: 0 10rem 0 auto
}

#topPage #KV {
    width: 100vw;
    height: 100vh
}

#topPage #KV .Section {
    height: 100%
}

#topPage #KV h1 {
    width: 100%;
    position: absolute;
    top: calc(50% + 3.75rem);
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #FFFFFF;
    text-align: center
}

#topPage #KV h1 .mainttl {
    font-size: 6rem;
    letter-spacing: 0.04em;
    line-height: 100%;
    margin: 0 0 2rem
}

#topPage #KV h1 .subttl {
    font-size: 1.87rem;
    line-height: 100%;
    letter-spacing: 0.034em;
    opacity: 0;
    -webkit-animation: fadeIn 1s ease forwards;
    animation: fadeIn 1s ease forwards;
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

#topPage #KV .imgHolder {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: -1
}

#topPage #KV .imgHolder .img {
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: cover;
    background-position: center;
    z-index: -3
}

#topPage #scrollDown {
    z-index: 10;
    color: #FFFFFF;
    font-size: 1.2rem;
    position: absolute;
    top: 100vh;
    left: 50vw;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
    -webkit-animation: scroll 1s ease forwards;
    animation: scroll 1s ease forwards;
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

#topPage #scrollDown:after {
    content: "";
    display: block;
    background: -o-linear-gradient(top, #FFFFFF 0%, #FFFFFF 50%, #154bd9 50%, #154bd9 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), color-stop(50%, #FFFFFF), color-stop(50%, #154bd9), to(#154bd9));
    background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 50%, #154bd9 50%, #154bd9 100%);
    position: absolute;
    width: 1px;
    height: 12.6rem;
    top: 3rem;
    left: 50%
}

#topPage #Copy {
    z-index: 10
}

#topPage #Copy .Section {
    text-align: center;
    z-index: -1;
    position: relative;
    padding: 15rem 0 20rem;
    margin: 0 0 -3.5rem
}

#topPage #Copy h3 {
    display: inline-block;
    font-size: 1.9rem;
    letter-spacing: 0.02em;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    position: relative;
    top: initial;
    left: initial;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
}

#topPage #Copy h3:after {
    content: none
}

#topPage #Copy h2 {
    margin: 1.5rem auto 4.5rem;
    font-size: 6.4rem;
    line-height: 131.25%;
    letter-spacing: 0.07em
}

#topPage #Copy h2 .copyAnim:first-child {
    padding: 0 0 0 7rem
}

#topPage #Copy .copy {
    line-height: 293.75%
}

#topPage #Copy .copy p {
    margin: 0 0 2rem
}

#topPage #About .Section {
    background-image: url("../img/bg_lightgray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

#topPage #About .blockHolder {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#topPage #About .blockHolder .block {
    width: calc((100% - 2.9rem) / 2);
    position: relative
}

#topPage #About .blockHolder .block .imgArea {
    width: 100%;
    aspect-ratio: 1/0.617;
    position: relative
}

#topPage #About .blockHolder .block .imgArea img {
    height: 100%
}

#topPage #About .blockHolder .block .textArea {
    background-color: #FFFFFF;
    padding: 5rem 3.1rem 8.5rem
}

#topPage #About .blockHolder .block .textArea .ttlArea {
    font-size: 3rem;
    text-align: center;
    margin: 0 0 3rem
}

#topPage #About .blockHolder .block .viewMore {
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%)
}

#topPage #Jobs h3:after {
    height: 19rem
}

#topPage #Jobs .Holder {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#topPage #Jobs .Holder .textArea {
    width: 50%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

#topPage #Jobs .Holder .textArea p {
    padding: 0 8.4rem 0 0;
    margin: 0 0 5rem
}

#topPage #Jobs .Holder .textArea .viewMore {
    position: relative
}

#topPage #Jobs .Holder .imgArea {
    width: 50%
}

#topPage #Members .Section {
    background-image: url("../img/bg_gray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

#topPage #Members .textArea {
    margin: 0 0 4.25rem
}

#topPage #Project .Section {
    background-image: url("../img/bg_blue.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

#topPage #Project h3 {
    color: #FFFFFF
}

#topPage #Project h3:after {
    background-color: #FFFFFF
}

#topPage #Project .ttlBlock {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: 0 0 6.7rem
}

#topPage #Project .ttlBlock h2 {
    line-height: 108.3%;
    color: #FFFFFF;
    white-space: nowrap;
    margin: 0 5.5rem 0 0
}

#topPage #Project .blockHolder {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#topPage #Project .blockHolder .block {
    width: calc((100% - 2.9rem) / 2);
    position: relative
}

#topPage #Project .blockHolder .block .imgArea {
    width: 100%;
    aspect-ratio: 1/0.617;
    position: relative
}

#topPage #Project .blockHolder .block .imgArea img {
    height: 100%
}

#topPage #Project .blockHolder .block .textArea {
    background-color: #FFFFFF;
    padding: 5rem 3.1rem 8.5rem
}

#topPage #Project .blockHolder .block .textArea .ttlArea {
    font-size: 3rem;
    text-align: center;
    margin: 0 0 3.5rem
}

#topPage #Project .blockHolder .block .viewMore {
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%)
}

#topPage #Others .Section {
    background-color: #f4f4f6
}

#topPage #Others h3:after {
    height: 8.6rem
}

#topPage #Others .blockHolder {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#topPage #Others .blockHolder .block {
    width: 49rem
}

#topPage #Others .blockHolder .block .ttlArea {
    width: 100%;
    padding: 0 0 3.9rem;
    margin: 0 0 4rem;
    border-bottom: 1px solid #003472;
    font-size: 3.9rem;
    line-height: 100%;
    position: relative
}

#topPage #Others .blockHolder .block .ttlArea:after {
    content: "";
    display: block;
    width: 5.5rem;
    aspect-ratio: 1/1;
    background-image: url("../img/othersArrow.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -0.3rem;
    right: 2.5rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

#topPage #Others .blockHolder .block:hover .ttlArea:after {
    -webkit-transform: translateX(1rem);
    -ms-transform: translateX(1rem);
    transform: translateX(1rem)
}

.lowPage .Section {
    padding: 14.5rem 0 20rem;
    position: relative
}

.lowPage .Section.blueSec {
    background-image: url("../img/bg_blue.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage .Section.blueSec .ttlArea .ttlEN:after {
    background-color: #FFFFFF
}

.lowPage .Section.graySec {
    background-image: url("../img/bg_lightgray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage .ttlArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.lowPage .ttlArea h2 {
    font-size: 5rem;
    line-height: 121%;
    letter-spacing: 0.02em;
    text-align: center;
    margin: 0 auto 3rem;
    width: 100%
}

.lowPage .ttlArea h2.lh-130 {
    line-height: 130%
}

.lowPage .ttlArea .ttlEN {
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: 2rem;
    line-height: 100%;
    position: relative;
    text-align: center;
    margin: 0 auto 10.4rem;
    display: inline-block
}

.lowPage .ttlArea .ttlEN:after {
    content: "";
    display: block;
    background-color: #003472;
    position: absolute;
    width: 3rem;
    height: 1px;
    top: 4.5rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.lowPage #KV {
    width: 100vw;
    height: 50rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.lowPage #KV .KVArea {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 50rem;
    z-index: -1
}

.lowPage #KV .depArea {
    position: absolute;
    bottom: 0;
    right: 11rem;
    width: 31rem;
    height: 15rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 0 0 2rem
}

.lowPage #KV .depArea .dep {
    font-size: 2.5rem;
    line-height: 100%
}

.lowPage #KV .depArea .dep.tworow {
    line-height: 125%
}

.lowPage #KV .depArea .details {
    margin: 1rem 0 0;
    width: 100%;
    line-height: 100%;
    text-align: left;
    font-size: 1.6rem
}

.lowPage #KV h1 {
    width: 100%;
    height: 42.5rem;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.lowPage #KV h1 .mainttl {
    font-size: 6rem;
    line-height: 110%;
    position: relative;
    letter-spacing: 0.001em
}

.lowPage #KV h1 .mainttl .subttl {
    position: absolute;
    top: -4rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 1.9rem;
    line-height: 100%;
    letter-spacing: 0;
    opacity: 0;
    white-space: nowrap;
    -webkit-animation: fadeIn 1s ease forwards;
    animation: fadeIn 1s ease forwards;
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.lowPage #KV h1 .mainttl .ttlJP {
    position: absolute;
    top: 8rem;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 3rem;
    line-height: 100%;
    opacity: 0;
    -webkit-animation: fadeIn 1s ease forwards;
    animation: fadeIn 1s ease forwards;
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.lowPage #Copy .Section {
    padding: 8rem 0 14rem;
    background-color: #f4f4f6
}

.lowPage #Copy .Section .textArea {
    line-height: 293.75%;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage #Copy .Section .textArea .note {
    font-size: 1.15rem
}

.lowPage .smallBlockHolder {
    gap: 2.1rem;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.lowPage .smallBlockHolder .smallBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage .smallBlockHolder .smallBlock .imgArea {
    width: 100%;
    aspect-ratio: 1/0.7
}

.lowPage .smallBlockHolder .smallBlock .textArea {
    background-color: #FFFFFF;
    padding: 2rem 1.7rem 2.8rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage .smallBlockHolder .smallBlock .textArea .post {
    line-height: 100%;
    margin: 0 0 1rem;
    text-align: left
}

.lowPage .smallBlockHolder .smallBlock .textArea .name {
    font-size: 2.5rem;
    line-height: 100%;
    margin: 0 0 2.5rem
}

.lowPage .smallBlockHolder .smallBlock .textArea .details {
    text-align: left
}

.lowPage .smallBlockHolder .smallBlock .textArea .details ul {
    margin-top: 1rem
}

.lowPage .smallBlockHolder .smallBlock .textArea .details ul li {
    position: relative;
    font-size: 1.1rem;
    padding-left: 1.5rem;
    line-height: 175%
}

.lowPage .smallBlockHolder .smallBlock .textArea .details ul li:before {
    content: "※";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0
}

.lowPage .smallBlockHolder .smallBlock .textArea.a-l .name {
    text-align: left
}

.lowPage .smallBlockHolder .smallBlock.center .textArea {
    padding: 3.5rem 4rem
}

.lowPage .smallBlockHolder .smallBlock.center .textArea .name {
    font-size: 2.5rem;
    text-align: center
}

.lowPage .smallBlockHolder .smallBlock.center .textArea .details {
    line-height: 150%
}

.lowPage .smallBlockHolder .smallBlock.block3 {
    width: calc((100% - 4.2rem) / 3)
}

.lowPage .smallBlockHolder .smallBlock.block2 {
    width: calc((100% - 2.1rem) / 2)
}

.lowPage .smallBlockHolder .smallBlock.block2 .imgArea {
    aspect-ratio: 1/0.547
}

.lowPage .gridHolder {
    display: -ms-grid;
    display: grid;
    gap: 2.1rem;
    -ms-grid-columns: 1fr 2.1rem 1fr 2.1rem 1fr 2.1rem 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr
}

.lowPage .gridHolder .grid {
    background-color: #FFFFFF;
    aspect-ratio: 1/1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.lowPage .gridHolder .grid.col2 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
    grid-column: 3/5;
    aspect-ratio: initial
}

.lowPage .gridHolder .grid .gridContents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage .gridHolder .grid .gridContents .icon {
    width: 7rem;
    aspect-ratio: 1/1;
    margin: 0 0 1rem
}

.lowPage .gridHolder .grid .gridContents .icon img {
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.lowPage .gridHolder .grid .gridContents .text {
    color: #003472;
    font-size: 2.5rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    margin: 0 0 0.75rem
}

.lowPage .gridHolder .grid .label {
    position: absolute;
    width: 2.5rem;
    height: 2.5rem;
    bottom: 0.5rem;
    right: 0.5rem
}

.lowPage .gridHolder .grid .label img {
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.lowPage .gridHolder .grid:hover {
    background-color: #24abe4
}

.lowPage .gridHolder .grid:hover .gridContents .icon img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.lowPage .gridHolder .grid:hover .gridContents .text {
    color: #FFFFFF
}

.lowPage .gridHolder .grid:hover .label img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.lowPage .ttlRow {
    line-height: 185.7%;
    font-size: 3.5rem;
    text-align: center;
    margin: 9rem auto 5rem;
    padding: 0 0 0.25rem
}

.lowPage .ttlRow.pullDown {
    cursor: pointer;
    position: relative;
    margin: 3rem auto 0
}

.lowPage .ttlRow.pullDown:after,
.lowPage .ttlRow.pullDown:before {
    content: "";
    display: block;
    position: absolute;
    width: 3rem;
    height: 1px;
    background-color: #FFFFFF;
    top: 50%;
    right: 2.55rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.lowPage .ttlRow.pullDown:after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

.lowPage .ttlRow.pullDown:first-child {
    margin: 9rem auto 0
}

.lowPage .ttlRow.pullDown.active:after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

.lowPage .pullDownContents {
    padding: 1.8rem 0 0;
    display: none
}

.lowPage .pullDownContents .List {
    height: auto
}

.lowPage .pullDownContents .List .row {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 2.6rem 0 3rem;
    border-bottom: 1px solid #eeeeee;
    text-align: left
}

.lowPage .pullDownContents .List .row:last-child {
    border-bottom: none;
    padding: 2.6rem 0 7rem
}

.lowPage .pullDownContents .List .row .ttl {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 2.5rem;
    line-height: 112%;
    padding-top: 0.4rem
}

.lowPage .pullDownContents .List .row .text {
    width: 62rem
}

.lowPage .pullDownContents.active {
    display: block
}

.lowPage .voices .row {
    width: 100%;
    margin: 0 0 3.4rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.lowPage .voices .row .imgArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage .voices .row .imgArea img {
    width: 7rem;
    margin: 0 0 1rem
}

.lowPage .voices .row .imgArea img.person01 {
    width: 9.1rem
}

.lowPage .voices .row .imgArea img.person02 {
    width: 9.4rem
}

.lowPage .voices .row .imgArea .name {
    line-height: 125%;
    text-align: center
}

.lowPage .voices .row .bubbleArea {
    width: 83.33%;
    background-color: rgba(36, 171, 228, 0.3);
    padding: 3rem;
    position: relative
}

.lowPage .voices .row .bubbleArea .bubble {
    position: absolute;
    left: 0.035rem;
    top: 0;
    -webkit-transform: translate(-101%, 100%);
    -ms-transform: translate(-101%, 100%);
    transform: translate(-101%, 100%);
    width: 1.85rem;
    height: 3.65rem;
    opacity: 0.3;
    background-image: url("../img/bubble.webp")
}

.lowPage .voices .row:last-child {
    margin-bottom: 0
}

.lowPage #Recommend .Section {
    background-color: #f4f4f6
}

.lowPage #Recommend .blockHolder {
    gap: 3rem
}

.lowPage #Recommend .blockHolder .contentsBlock {
    display: block;
    width: calc((100% - 6rem) / 3)
}

.lowPage #Recommend .blockHolder .contentsBlock .imgArea {
    width: 100%;
    aspect-ratio: 1/0.588;
    overflow: hidden
}

.lowPage #Recommend .blockHolder .contentsBlock .imgArea img {
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

.lowPage #Recommend .blockHolder .contentsBlock .textArea {
    background-color: #FFFFFF;
    height: 12rem;
    padding: 0 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.lowPage #Recommend .blockHolder .contentsBlock .textArea p {
    font-size: 2.5rem
}

.lowPage #Recommend .blockHolder .contentsBlock .textArea p.small {
    font-size: 1.6rem
}

.lowPage #Recommend .blockHolder .contentsBlock .textArea:after {
    content: "";
    display: block;
    width: 5.5rem;
    height: 5.5rem;
    background-image: url("../img/othersArrow.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 2rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.lowPage #Recommend .blockHolder .contentsBlock:hover .imgArea img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

.lowPage #Recommend .blockHolder .contentsBlock:hover .textArea:after {
    -webkit-transform: translate(0.8rem, -50%);
    -ms-transform: translate(0.8rem, -50%);
    transform: translate(0.8rem, -50%)
}

.lowPage #BusinessContents .imgArea {
    margin: 0 auto;
    gap: 1.8rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #BusinessContents .imgArea .circle {
    width: 50.2rem;
    aspect-ratio: 1/1;
    position: relative
}

.lowPage #BusinessContents .imgArea .ttl {
    position: absolute;
    width: 29.4rem;
    height: 4.5rem;
    border-radius: 2.25rem;
    background-color: #003472;
    font-size: 2.526rem;
    text-align: center;
    padding: 0.6rem 0 0;
    top: 6.7rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.lowPage #BusinessContents .imgArea .link {
    position: absolute;
    width: 16.2rem;
    height: 3.25rem;
    border-radius: 1.625rem;
    background-color: #003472;
    font-size: 1.773rem;
    text-align: center;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    bottom: 5.7rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    pointer: cursor;
    transition: 0.4s
}

.lowPage #BusinessContents .imgArea .link span {
    padding: 0 2rem 0 0
}

.lowPage #BusinessContents .imgArea .link:hover {
    opacity: 0.6
}

.lowPage #BusinessContents .imgArea .link:after {
    content: "";
    display: block;
    width: 2.6rem;
    height: 2.6rem;
    background-image: url("../img/aboutus/business/link_w.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0.3rem
}

.lowPage #BusinessContents .imgArea .arrow {
    position: absolute;
    width: 93.2rem;
    height: 12.6rem;
    bottom: -10rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-image: url("../img/aboutus/business/arrow.webp");
    position: center;
    background-repeat: no-repeat;
    background-size: 100%
}

.lowPage #BusinessContents .boxTtl {
    background-color: #003472;
    font-size: 3.5rem;
    line-height: 150%;
    padding: 2rem;
    text-align: center;
    margin: 12.6rem 0 0
}

.lowPage #BusinessContents .boxContents {
    background-color: #eeeeee;
    padding: 4.5rem 8.5rem
}

.lowPage #BusinessContents .boxContents .row:first-child {
    margin: 0 0 4.25rem
}

.lowPage #BusinessContents .boxContents h4 {
    font-size: 3rem;
    margin: 0 0 1.5rem
}

.lowPage #BusinessContents .otherLink {
    display: block;
    width: 100%;
    height: 8rem;
    position: relative;
    text-align: right;
    padding: 2.2rem 8.5rem 0 0
}

.lowPage #BusinessContents .otherLink span {
    position: absolute;
    top: 50%;
    right: 8.5rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 2rem;
    padding-right: 2rem
}

.lowPage #BusinessContents .otherLink span:after {
    content: "";
    display: block;
    position: absolute;
    width: 1.5rem;
    height: 1.5rem;
    background-image: url("../img/newpage.webp");
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-42%);
    -ms-transform: translateY(-42%);
    transform: translateY(-42%)
}

.lowPage #BusinessContents .otherLink:after {
    content: "";
    display: block;
    width: 3.85rem;
    height: 3.85rem;
    background-image: url("../img/aboutus/business/link_r.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 3rem;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s
}

.lowPage #BusinessContents .otherLink:hover:after {
    -webkit-transform: translate(20%, -50%);
    -ms-transform: translate(20%, -50%);
    transform: translate(20%, -50%)
}

.lowPage #Semiconductor p {
    text-align: center
}

.lowPage #Semiconductor p.top {
    margin-top: -2rem
}

.lowPage #Semiconductor .ttlRow {
    margin: 5rem auto 2.5rem
}

.lowPage #Semiconductor .smallBlockHolder {
    margin: 3.5rem auto 10.2rem;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.lowPage #Semiconductor .smallBlockHolder.process {
    margin: 3.5rem auto 0
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock {
    height: 100%;
    background-color: #FFFFFF
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .Holder {
    position: relative
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .Holder .noArea {
    font-size: 3rem;
    position: absolute;
    top: 1rem;
    left: 1.4rem
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .imgArea {
    background-color: #FFFFFF;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .textArea {
    padding: 0 3.5rem 4rem;
    height: 22rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .textArea .name {
    font-size: 2.5rem;
    line-height: 156%
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .textArea .details {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .linkArea {
    width: 100%;
    height: 8.2rem;
    font-size: 2rem;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .linkArea span {
    margin-right: 4.5rem
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .linkArea.white:after {
    content: "";
    display: block;
    width: 3.85rem;
    height: 3.85rem;
    background-image: url("../img/aboutus/business/link_r.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 2.9rem;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s
}

.lowPage #Semiconductor .smallBlockHolder.process .smallBlock .linkArea:hover:after {
    -webkit-transform: translate(20%, -50%);
    -ms-transform: translate(20%, -50%);
    transform: translate(20%, -50%)
}

.lowPage #Semiconductor .lineTtl {
    text-align: center;
    position: relative;
    font-size: 3.158rem;
    line-height: 100%;
    margin: 6rem auto 2.5rem
}

.lowPage #Semiconductor .lineTtl:after,
.lowPage #Semiconductor .lineTtl:before {
    content: "";
    display: block;
    position: absolute;
    width: 38.75rem;
    height: 1px;
    background-color: #003472;
    top: 50%
}

.lowPage #Semiconductor .lineTtl:before {
    left: 0
}

.lowPage #Semiconductor .lineTtl:after {
    right: 0
}

.lowPage #Semiconductor .openModal {
    cursor: pointer
}

.lowPage #Measurement p {
    text-align: center
}

.lowPage #Measurement p.top {
    margin-top: -2rem
}

.lowPage #Measurement .ttlRow.row2 {
    margin: 5rem auto 2.5rem;
    height: auto;
    line-height: 150%;
    padding: 2rem 0
}

.lowPage #Measurement .machineBlockHolder {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage #Measurement .machineBlockHolder .machineBlock {
    width: 100%;
    padding: 3.7rem 0 4rem;
    border-bottom: 1px solid #003472;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 48%
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl .ttl {
    font-size: 3rem;
    margin: 0 0 1rem;
    width: 100%
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl img {
    margin: auto 0 3rem;
    width: 100%
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail {
    width: 48%;
    position: relative
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail {
    text-align: center;
    position: relative;
    z-index: 1
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail h3 {
    background-color: #003472;
    display: inline-block;
    padding: 0 1.5rem 0.25rem 1.75rem;
    margin: 0 auto
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail p {
    line-height: 2.5rem;
    margin: 1.5rem auto 2rem;
    min-height: 4rem
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail img {
    margin: 0 0 3rem;
    height: 29rem;
    max-width: 95%;
    -o-object-fit: cover;
    object-fit: cover
}

.lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .border {
    border: 1px solid #003472;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 94.5%
}

.lowPage #Measurement .flowBlock {
    text-align: center
}

.lowPage #Measurement .flowBlock .ttl {
    font-size: 3rem;
    line-height: 100%;
    margin: 3.5rem 0 2rem;
    text-align: center
}

.lowPage #Measurement .flowBlock p {
    line-height: 100%
}

.lowPage #Measurement .flowBlock .imgArea {
    width: 86.65rem;
    margin: 7.5rem auto 10.6rem;
    position: relative
}

.lowPage #Measurement .flowBlock .imgArea .labelHolder {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.lowPage #Measurement .flowBlock .imgArea .labelHolder .label {
    width: 14.29%;
    height: 100%;
    line-height: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Measurement .flowBlock .imgArea .here {
    width: 60.85rem;
    position: absolute;
    top: -3.7rem;
    left: 50%;
    -webkit-transform: translateX(-51%);
    -ms-transform: translateX(-51%);
    transform: translateX(-51%)
}

.lowPage #FeaturesContents .Section {
    background-image: url("../img/bg_lightgray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #FeaturesContents .Block {
    width: 93.75%;
    margin: 0 0 11.7rem auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 8rem
}

.lowPage #FeaturesContents .Block.textR {
    margin: 0 auto 12.5rem 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.lowPage #FeaturesContents .Block.noImg {
    margin: 0 auto
}

.lowPage #FeaturesContents .Block:last-child {
    margin-bottom: 0
}

.lowPage #FeaturesContents .Block .imgArea {
    width: 59.0933333333%;
    aspect-ratio: 1/0.515;
    padding: 0 0 0.8rem
}

.lowPage #FeaturesContents .Block .textArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #FeaturesContents .Block .textArea .num span {
    font-size: 7.5rem;
    line-height: 100%;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text
}

.lowPage #FeaturesContents .Block .textArea h4 {
    font-size: 3rem;
    line-height: 158.33%;
    margin: 1rem 0 5rem
}

.lowPage #Copy .Section .textHolder {
    margin: 0 auto 11.5rem
}

.lowPage.people #Copy .Section {
    background-color: #FFFFFF;
    padding: 8rem 0 14rem
}

.lowPage.people #Copy .textHolder {
    margin: 0 auto;
    padding: 0
}

.lowPage.people #Copy .textHolder .textArea {
    width: 55rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: left
}

.lowPage.people #Copy .textHolder .textArea h3 {
    font-size: 3.5rem;
    line-height: 150%;
    margin: 0 0 4.5rem
}

.lowPage.people #Copy .depArea {
    width: 100%;
    margin: 0 auto auto;
    position: absolute;
    top: 0
}

.lowPage.people #Copy .depArea .Holder {
    width: 31rem;
    height: 15rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 0 0 2rem;
    position: absolute;
    top: 0;
    right: calc(11rem - 8px)
}

.lowPage #peopleContents .Section {
    background-image: url("../img/bg_lightgray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #peopleContents .Block {
    width: 82.63%;
    margin: 0 0 12.75rem auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 8rem
}

.lowPage #peopleContents .Block.textR {
    margin: 0 auto 12.75rem 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.lowPage #peopleContents .Block:last-child {
    margin-bottom: 0
}

.lowPage #peopleContents .Block .imgArea {
    width: 54.0360643834%;
    aspect-ratio: 1/1;
    padding: 1rem 0 0
}

.lowPage #peopleContents .Block .textArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #peopleContents .Block .textArea h4 {
    font-size: 3.5rem;
    line-height: 150%;
    margin: 0 0 4.5rem
}

.lowPage #Schedule .Section {
    background-image: url("../img/bg_blue.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #Schedule .Section .ttlArea .ttlEN:after {
    background-color: #FFFFFF
}

.lowPage #Schedule .scheduleHolder {
    position: relative
}

.lowPage #Schedule .scheduleHolder .row {
    z-index: 2;
    width: 100%;
    font-size: 2.5rem;
    line-height: 120%;
    margin: 0 0 2.6rem
}

.lowPage #Schedule .scheduleHolder .row .time {
    width: 12rem;
    background-color: #003472;
    padding: 2rem 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Schedule .scheduleHolder .row .plan {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 2rem 3.75rem;
    background-color: #f4f4f6;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.lowPage #Schedule .scheduleHolder .row .plan p {
    display: block;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Schedule .scheduleHolder .row .plan .details {
    width: 50rem;
    font-size: 1.6rem;
    line-height: 200%
}

.lowPage #Schedule .scheduleHolder .line {
    position: absolute;
    width: 1px;
    height: 100%;
    background-color: #FFFFFF;
    top: 0;
    left: 6rem
}

.lowPage.project #Copy .textArea {
    padding: 2rem 1.5rem
}

.lowPage.project #Copy .textArea .details {
    line-height: 3.2rem;
    margin: -0.5rem 0 0
}

.lowPage #projectContents .Section {
    background-color: #f4f4f6;
    padding: 14.5rem 0 0;
    background-image: url("../img/bg_gray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #projectContents .Block {
    width: 82.63%;
    margin: 0 0 12.75rem auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 8rem
}

.lowPage #projectContents .Block.textR {
    margin: 0 auto 12.75rem 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.lowPage #projectContents .Block:last-child {
    margin-bottom: 0
}

.lowPage #projectContents .Block .textArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #projectContents .Block .textArea h5 {
    font-size: 1.9rem;
    line-height: 100%;
    margin: 0 0 2rem
}

.lowPage #projectContents .Block .textArea h4 {
    margin: 0 0 6.4rem
}

.lowPage #projectContents .Block .textArea h4 span {
    display: inline-block;
    padding: 0.3rem 1.8rem 0.4rem;
    margin: 0 0 0.7rem;
    font-size: 2.7rem;
    line-height: 5rem
}

.lowPage #projectContents .Block .textArea h4 span.small {
    font-size: 2.5rem
}

.lowPage #projectContents .Block .textArea h4 span.pr--0 {
    padding: 0.3rem 2rem 0.4rem 0.2rem
}

.lowPage #projectContents .Block .textArea .interviewArea .row {
    width: 100%;
    margin: 0 0 2.4rem
}

.lowPage #projectContents .Block .textArea .interviewArea .row .name {
    width: 6.9rem;
    padding: 0.2rem 0 0
}

.lowPage #projectContents .Block .textArea .interviewArea .row p {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 1.6rem;
    line-height: 200%
}

.lowPage #projectContents .Block .textArea .messageArea .row {
    width: 100%;
    margin: 0 0 2.4rem
}

.lowPage #projectContents .Block .textArea .messageArea .row .icon {
    margin: 0 2.7rem auto 0
}

.lowPage #projectContents .Block .textArea .messageArea .row .icon img {
    width: 12.5rem;
    height: 12.5rem
}

.lowPage #projectContents .Block .textArea .messageArea .row p {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 1.6rem;
    line-height: 200%
}

.lowPage #projectContents .Block .imgArea {
    width: 48.7rem;
    aspect-ratio: 1/1;
    padding: 0.2rem 0 0
}

.lowPage #projectContents .img100 {
    aspect-ratio: 1/0.33;
    margin: 0 0 12.75rem
}

.lowPage #projectContents .img100:last-child {
    margin: 0
}

.lowPage .ttlArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage .ttlArea .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.4rem
}

.lowPage .ttlArea .row h2 {
    text-align: center;
    margin: 0 auto 3rem 0;
    width: auto
}

.lowPage .ttlArea .row h2.lh-130 {
    line-height: 130%
}

.lowPage .ttlArea .row .icon {
    margin: 0 0 0 auto;
    right: 0;
    left: 0;
    height: 6.4rem;
    aspect-ratio: 110/125
}

.lowPage .ttlArea .row .icon.white {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.lowPage #Childcare .Section,
.lowPage #Systems .Section,
.lowPage #Vacation .Section {
    background-image: url("../img/bg_gray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #Life .Section,
.lowPage #Nursing .Section,
.lowPage #Training .Section {
    background-color: #f4f4f6
}

.lowPage #Nursing .smallBlockHolder .smallBlock .textArea {
    height: 23rem
}

.lowPage #Systems .gridHolder {
    display: -ms-grid;
    display: grid;
    gap: 2.1rem;
    -ms-grid-columns: 1fr 2.1rem 1fr 2.1rem 1fr;
    grid-template-columns: 1fr 1fr 1fr
}

.lowPage #Systems .gridHolder .grid {
    aspect-ratio: initial;
    background-color: rgba(36, 171, 228, 0.3);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    padding: 3.5rem 2.3rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage #Systems .gridHolder .grid .ttl {
    font-size: 2.5rem;
    line-height: 100%;
    font-weight: 600;
    margin: 0 auto 1.75rem
}

.lowPage #Systems .gridHolder .grid .ttl.withsub {
    margin: 0 auto
}

.lowPage #Systems .gridHolder .grid .subttl {
    width: 100%;
    height: 4rem;
    text-align: center
}

.lowPage #Systems .gridHolder .grid .text {
    color: #003472
}

.lowPage #Numbers .Section {
    background-image: url("../img/bg_blue.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #Numbers .ttlEN:after {
    background-color: #FFFFFF
}

.lowPage #Numbers .blockHolder {
    gap: 2.1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage #Numbers .blockHolder .row {
    width: 100%;
    gap: 2.1rem;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.lowPage #Numbers .blockHolder .row .block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.lowPage #Numbers .blockHolder .row .block.w-1 {
    width: calc((100% - 4.2rem) / 3)
}

.lowPage #Numbers .blockHolder .row .block.w-2 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Numbers .blockHolder .row .block.w-1-5 {
    width: calc((100% - 2.1rem) / 2)
}

.lowPage #Numbers .blockHolder .row .block .ttl {
    width: 100%;
    background-color: #003472;
    height: 5.25rem;
    text-align: center;
    font-size: 2.5rem;
    line-height: 210%
}

.lowPage #Numbers .blockHolder .row .block .contents {
    background-color: #FFFFFF;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2.5rem 0 3rem
}

.lowPage #Numbers .blockHolder .row .block .contents .graph {
    width: 21.1rem;
    height: 21.1rem;
    margin: 1rem 0 1rem
}

.lowPage #Numbers .blockHolder .row .block .contents .icon {
    width: 12rem
}

.lowPage #Numbers .blockHolder .row .block .contents .data {
    width: 100%;
    text-align: center
}

.lowPage #Numbers .blockHolder .row .block .contents span {
    margin: 0 auto;
    display: block;
    line-height: 2rem
}

.lowPage #Numbers .blockHolder .row .block .contents span.num {
    display: inline;
    font-size: 9rem;
    line-height: 100%
}

.lowPage #Numbers .blockHolder .row .block .contents span.text {
    display: inline;
    font-size: 2.5rem;
    margin-left: 0.6rem
}

.lowPage #Numbers .blockHolder .row .block .contents .tworow {
    height: 4rem;
    margin: 1.5rem 0 0;
    line-height: 2rem;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.lowPage #Numbers .blockHolder .row .block .contents.c1-5 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 3rem 0
}

.lowPage #Numbers .blockHolder .row .block .contents.c1-5 .data {
    width: auto;
    margin-left: 2rem
}

.lowPage #Numbers .blockHolder .row .block .contents.c1-5 .data .m-l {
    margin-left: 0.4rem;
    margin-right: 1rem
}

.lowPage #Numbers .blockHolder .row .block .contents.c1-5 .data .small {
    text-align: left
}

.lowPage #Numbers .blockHolder .row .block .tableContents {
    background-color: #FFFFFF;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    font-size: 2rem;
    padding: 1.7rem 0 2.5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Numbers .blockHolder .row .block .tableContents .note {
    font-size: 1.6rem;
    margin: 1rem 0 0 auto
}

.lowPage #Numbers .blockHolder .row .block .tableContents .small {
    font-size: 1.6rem;
    line-height: 100%
}

.lowPage #Numbers .blockHolder .row .block .tableContents .num {
    font-size: 4.5rem;
    line-height: 100%
}

.lowPage #Numbers .blockHolder .row .block .tableContents .text {
    margin-left: 0.4rem
}

.lowPage #Numbers .blockHolder .row .block .tableContents table td {
    vertical-align: middle;
    padding: 0.75rem 0;
    border-bottom: 1px solid #eeeeee
}

.lowPage #InfoMenu .Section {
    background-color: #f4f4f6
}

.lowPage #InfoMenu .gridHolder .grid {
    aspect-ratio: auto;
    height: 6.2rem;
    padding: 1rem 0.7rem 0 0
}

.lowPage #InfoMenu .gridHolder .grid .gridContents .text {
    margin: -0.75rem 0 0
}

.lowPage #Guidelines .tableContents {
    margin-top: -700px;
    padding-top: 700px
}

.lowPage #Guidelines .tableContents tr {
    border-bottom: 1px solid rgba(0, 52, 114, 0.1)
}

.lowPage #Guidelines .tableContents tr:first-child td {
    padding: 0 0 3rem
}

.lowPage #Guidelines .tableContents th {
    width: 15.5rem;
    font-weight: bold
}

.lowPage #Guidelines .tableContents td {
    padding: 3rem 0
}

.lowPage #Guidelines .tableContents td ul li {
    padding-left: 2.1rem;
    position: relative
}

.lowPage #Guidelines .tableContents td ul li:before {
    content: "●";
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.lowPage #Guidelines .tableContents td p {
    margin: 2rem 0 0
}

.lowPage #Guidelines #Flow .flowHolder {
    position: relative
}

.lowPage #Guidelines #Flow .flowHolder .imgArea img {
    width: 23.3rem
}

.lowPage #Guidelines #Flow .flowHolder .flowText {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.lowPage #Guidelines #Flow .flowHolder .flowText .flowRow {
    height: 16.67%
}

.lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .ttl {
    width: 23.3rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .textArea {
    padding-left: 5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .textArea a {
    text-decoration: underline
}

.lowPage #Seminar .Section {
    background-color: #f4f4f6
}

.lowPage #Seminar .seminarBlock {
    width: 66.67%;
    margin: auto
}

.lowPage #Seminar .seminarBlock p {
    margin: 3.4rem 0
}

.lowPage #Seminar .seminarBlock .linkArea {
    gap: 3rem 5rem;
    margin: 3rem 0
}

.lowPage #Seminar .seminarBlock .linkArea.wide {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.lowPage #Seminar .seminarBlock .linkArea .link {
    width: calc((100% - 5rem) / 2);
    height: 8.3rem;
    position: relative
}

.lowPage #Seminar .seminarBlock .linkArea .link.wide {
    width: 100%
}

.lowPage #Seminar .seminarBlock .linkArea .link span {
    margin-left: 2.3rem
}

.lowPage #Seminar .seminarBlock .linkArea .link:after {
    content: "";
    display: block;
    width: 3.85rem;
    height: 3.85rem;
    background-image: url("../img/aboutus/business/link_r.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 2.9rem;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s
}

.lowPage #Seminar .seminarBlock .linkArea .link:hover:after {
    -webkit-transform: translate(20%, -50%);
    -ms-transform: translate(20%, -50%);
    transform: translate(20%, -50%)
}

.lowPage #FAQ .Section .List .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1)
}

.lowPage #FAQ .Section .List .row:last-child {
    border-bottom: none
}

.lowPage #FAQ .Section .List .row .q {
    font-size: 2.5rem;
    margin: 0 0 1rem
}

.lowPage #FAQ .Section .List .row .a,
.lowPage #FAQ .Section .List .row .q {
    padding-left: 3.2rem;
    position: relative;
    word-break: break-all
}

.lowPage #FAQ .Section .List .row .a:before,
.lowPage #FAQ .Section .List .row .q:before {
    content: "";
    display: block;
    width: 2.15rem;
    height: 2.4rem;
    background-image: url("../img/info/Q.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0.5rem;
    left: 0
}

.lowPage #FAQ .Section .List .row .a:before {
    background-image: url("../img/info/A.webp")
}

.lowPage #FAQ .Section .List .row p {
    margin-top: 1.5rem
}

.lowPage #FAQ .Section .List .row p.note {
    font-size: 1.2rem;
    margin-top: 0
}

.lowPage #FAQ .Section .List .row ul li {
    padding-left: 2.8rem;
    position: relative
}

.lowPage #FAQ .Section .List .row ul li:before {
    content: "◆";
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.lowPage #FAQ .Section .List .row a {
    text-decoration: underline
}

.lowPage #Contact .Section {
    background-color: #f4f4f6;
    padding: 22.2rem 0 5.5rem
}

.lowPage #Contact .Section .Contents {
    padding: 10rem 0 9rem;
    border: 1rem solid #24abe4;
    -o-border-image: -o-linear-gradient(left, #1c9bda, #004a93);
    border-image: -webkit-gradient(linear, left top, right top, from(#1c9bda), to(#004a93));
    border-image: linear-gradient(to right, #1c9bda, #004a93);
    border-image-slice: 1;
    background-color: #FFFFFF
}

.lowPage #Contact .Section .Contents .details {
    text-align: center
}

.lowPage #Contact .Section .Contents .details p:first-child {
    margin: 0 0 2rem
}

.lowPage #Contact .Section .Contents .details .row {
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Contact .Section .Contents .details .row p a {
    color: #003472
}

.lowPage #Contact .Section .Contents .details .row p:first-child:after {
    content: "/";
    margin: 0 2rem
}

.lowPage #JobMenu .Section {
    padding: 16.8rem 0;
    background-image: url("../img/bg_gray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #JobMenu .gridHolder {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr
}

.lowPage #JobMenu .gridHolder .grid {
    aspect-ratio: auto;
    height: 6.2rem;
    padding: 0.7rem 0 0
}

.lowPage #JobChart .Section {
    padding: 14.5rem 0 0;
    background-color: #eeeeee
}

.lowPage #JobChart .ttlEN {
    margin: 0 auto 5.5rem
}

.lowPage #JobChart .imgArea {
    position: relative
}

.lowPage #JobChart .openModal {
    position: absolute;
    width: 22rem;
    height: 3.8rem;
    cursor: pointer;
    top: 0;
    left: 0
}

.lowPage #JobChart .openModal:after {
    content: "";
    display: block;
    width: 2.2rem;
    height: 2.2rem;
    background-image: url("../img/jobs/jobIcon.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    -ms-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

.lowPage #JobChart .openModal:hover:after {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
    -ms-transform: translate(-50%, -50%) rotate(360deg);
    transform: translate(-50%, -50%) rotate(360deg)
}

.lowPage #JobChart .openModal.chart01 {
    top: 6.5rem;
    left: 22.2rem
}

.lowPage #JobChart .openModal.chart02 {
    top: 6.5rem;
    left: 47.5rem
}

.lowPage #JobChart .openModal.chart03 {
    top: 16.5rem;
    left: 19.4rem;
}

.lowPage #JobChart .openModal.chart04 {
    top: 22.6rem;
    left: 19.4rem;
}

.lowPage #JobChart .openModal.chart05 {
    top: 28.7rem;
    left: 19.4rem;
}

.lowPage #JobChart .openModal.chart06 {
    top: 34.8rem;
    left: 19.4rem;
}

.lowPage #JobChart .openModal.chart07 {
    top: 40.9rem;
    left: 19.4rem;
}

.lowPage #JobChart .openModal.chart08 {
    width: 14rem;
    top: 50rem;
    left: 40rem;
}

.lowPage #JobChart .openModal.chart08:after {
    background-image: url("../img/jobs/jobIcon_w.webp")
}

.lowPage #Matrix .Section {
    background-color: #eeeeee
}

.lowPage #Matrix .ttlEN {
    margin: 0 auto 5.5rem
}

.lowPage #Matrix .imgArea {
    position: relative
}

.lowPage #Matrix .openModal {
    position: absolute;
    width: 3.8rem;
    height: 16rem;
    cursor: pointer;
    top: 0;
    left: 0
}

.lowPage #Matrix .openModal:after {
    content: "";
    display: block;
    width: 2.2rem;
    height: 2.2rem;
    background-image: url("../img/jobs/jobIcon.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    -ms-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

.lowPage #Matrix .openModal:hover:after {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
    -ms-transform: translate(-50%, -50%) rotate(360deg);
    transform: translate(-50%, -50%) rotate(360deg)
}

.lowPage #Matrix .openModal.matrix01 {
    top: 6rem;
    left: 20.4rem
}

.lowPage #Matrix .openModal.matrix02 {
    top: 6rem;
    left: 26.1rem
}

.lowPage #Matrix .openModal.matrix03 {
    top: 6rem;
    left: 31.8rem
}

.lowPage #Matrix .openModal.matrix04 {
    top: 6rem;
    left: 37.4rem
}

.lowPage #Matrix .openModal.matrix05 {
    top: 6rem;
    left: 43rem
}

.lowPage #Matrix .openModal.matrix06 {
    height: 21.3rem;
    top: 6rem;
    left: 58.9rem
}

.lowPage #Matrix .openModal.matrix07 {
    height: 21.3rem;
    top: 6rem;
    left: 64.8rem
}

.lowPage #Matrix .openModal.matrix08 {
    top: 6rem;
    left: 79.2rem
}

.lowPage #Members .Section {
    padding: 16.8rem 0;
    background-image: url("../img/bg_gray.webp");
    background-size: 100%;
    background-repeat: repeat-y
}

.lowPage #Members .textArea {
    margin: 0 0 4.25rem
}

.lowPage #Modal {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    z-index: 100
}

.lowPage #Modal .modalBG {
    width: 100vw;
    height: 100vh;
    position: relative;
    background-color: rgba(155, 216, 241, 0.8)
}

.lowPage #Modal .modalArea {
    width: 78%;
    aspect-ratio: 1/0.606;
    background-color: #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: none
}

.lowPage #Modal .modalArea .Contents {
    padding: 7rem 6.5rem;
    gap: 6.5rem;
    height: 100%
}

.lowPage #Modal .modalArea .Contents .col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 100%
}

.lowPage #Modal .modalArea .Contents .col h2 {
    font-size: 3rem;
    line-height: 100%;
    margin: 0 0 3rem;
    text-align: left
}

.lowPage #Modal .modalArea .Contents .col .link {
    width: 47.5rem;
    height: 9.5rem;
    background: -o-linear-gradient(right, #1c9bda, #004a93);
    background: -webkit-gradient(linear, right top, left top, from(#1c9bda), to(#004a93));
    background: linear-gradient(to left, #1c9bda, #004a93);
    color: #FFFFFF;
    padding: 3.25rem 2.5rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    position: relative
}

.lowPage #Modal .modalArea .Contents .col .link span {
    font-size: 2rem
}

.lowPage #Modal .modalArea .Contents .col .link:after {
    content: "";
    display: block;
    width: 4.5rem;
    height: 4.5rem;
    background-image: url("../img/jobs/linkArrow.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 3.4rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.lowPage #Modal .modalArea .Contents .col .link:hover:after {
    -webkit-transform: translate(0.8rem, -50%);
    -ms-transform: translate(0.8rem, -50%);
    transform: translate(0.8rem, -50%)
}

.lowPage #Modal .modalArea .Contents .col img {
    width: 45.7rem;
    aspect-ratio: 1/0.578;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 100% 20%;
    object-position: 100% 20%
}

.lowPage #Modal .modalArea.machineModal .Contents .col {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.lowPage #Modal .modalArea.machineModal .Contents .col .imgTtl {
    border-bottom: 1px solid #003472;
    height: 3.9rem;
    padding: 0.2rem 1rem;
    margin: 1.5rem 0;
    font-size: 1.8rem
}

.lowPage #Modal .modalArea.machineModal .Contents .col .imgTtl:first-child {
    margin: 0 0 1.5rem
}

.lowPage #Modal .modalArea.machineModal .Contents .col.machine img {
    -o-object-fit: contain;
    object-fit: contain;
    aspect-ratio: auto
}

.lowPage #Modal .modalArea .close {
    width: 2.3rem;
    height: 2.1rem;
    position: absolute;
    top: 2.5rem;
    right: 3rem;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    cursor: pointer
}

.lowPage #Modal .modalArea .close:hover {
    opacity: 0.6
}

footer {
    position: relative;
    z-index: 5
}

footer .Section {
    padding: 14.5rem 0 5rem !important;
    width: 100vw;
    background-image: url("../img/bg_footer.webp");
    background-size: 100%;
    background-repeat: repeat-y;
    padding: 14.4rem 0 5.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 1.4rem;
    line-height: 200%;
    padding: 14.2rem 0 5rem
}

footer .Section a {
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s
}

footer .Section a:hover {
    opacity: 0.4
}

footer .Section .footerTop {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: 0 auto 7.5rem
}

footer .Section .footerTop dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0 10rem 0 0
}

footer .Section .footerTop dl dt {
    font-size: 1.8rem;
    margin: 2.75rem 0 1.2rem
}

footer .Section .footerTop dl dt a {
    color: #f4f4f6
}

footer .Section .footerTop dl dt:first-child {
    margin: 0 0 1.2rem
}

footer .Section .footerTop dl dd a {
    color: #b6b6b7;
    position: relative
}

footer .Section .footerTop dl dd a:after {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    background-color: #b6b6b7;
    left: 0;
    bottom: 0.25rem;
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s
}

@media (hover:hover) and (pointer:fine) {
    footer .Section .footerTop dl dd a:hover {
        opacity: 1
    }

    footer .Section .footerTop dl dd a:hover:after {
        width: 100%
    }
}

footer .Section .footerTop:last-child {
    margin: 0
}

footer .Section .footerTop .entryBlock {
    display: block
}

footer .Section .footerTop .entryBlock span {
    font-size: 5rem;
    line-height: 100%;
    display: block;
    width: 31.4rem;
    padding: 0 0 3.7rem;
    border-bottom: 1px solid #f4f4f6;
    color: #f4f4f6;
    position: relative
}

footer .Section .footerTop .entryBlock span:after {
    content: "";
    display: block;
    width: 5.5rem;
    height: 5.5rem;
    background-image: url("../img/entry.webp");
    background-size: contain;
    position: absolute;
    top: 0;
    right: 2.5rem;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

footer .Section .footerTop .entryBlock:hover {
    opacity: 1
}

footer .Section .footerTop .entryBlock:hover span:after {
    -webkit-transform: translateX(2.5rem);
    -ms-transform: translateX(2.5rem);
    transform: translateX(2.5rem)
}

footer .Section .footerBottom {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 3rem 0 0;
    border-top: 1px solid #b6b6b7
}

footer .Section .footerBottom ul li a {
    color: #b6b6b7;
    margin: 0 4.2rem 0 0;
    position: relative
}

footer .Section .footerBottom ul li a:after {
    content: "";
    display: block;
    width: 1.15rem;
    height: 1.15rem;
    background-image: url("../img/newpage_footer.webp");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 1rem;
    right: -1.55rem
}

footer .Section .footerBottom ul li a:before {
    content: "";
    width: 0;
    height: 1px;
    position: absolute;
    background-color: #b6b6b7;
    left: 0;
    bottom: 0.25rem;
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s
}

@media (hover:hover) and (pointer:fine) {
    footer .Section .footerBottom ul li a:hover {
        opacity: 1
    }

    footer .Section .footerBottom ul li a:hover:before {
        width: calc(100% + 2rem)
    }
}

footer .Section .footerBottom .copy {
    color: #b6b6b7
}


/* パパママ　追加した 書き足したCSS　PC */
  .linkArea_pl {
    margin-bottom: 0 !important;
}

.pllinkImage {
   margin-top: 8.4rem;
}

.pllinkImage a {
    width:100%;
}



.plText {
    padding-bottom: 0.003rem  !important;
}

.shikai { 
    margin-top: 3.6rem !important;
}

.centerBar {
    margin-bottom:7.1rem; 
}

.centerBar .inner {
    margin-bottom:0.7rem;
    font-size: 2.7rem;
    line-height: 5rem;
    padding: 0.3rem 1.8rem 0.4rem;
}

.centerBar .inner02 {
   margin-top: 0;
}

.plLead {
    margin: 0 0 3.5rem;
}

.plChildcare {
    background-image: url(none)!important;background-color: rgb(237, 237, 237);
}

.parentalleave .centerBlock {
    margin:0 auto 12.75rem !important;
}












@media only screen and (max-width:835px) {
    .pc {
        display: none
    }

    .sp {
        display: none
    }

    .tb {
        display: block
    }

    .pctb {
        display: block
    }

    .pcsp {
        display: none
    }

    .tbsp {
        display: block
    }

    .tbsp-c {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .tbsp-cr {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .tbsp-w100 {
        width: 100% !important
    }

    html {
        font-size: 119.7%;
        font-size: 1.197vw
    }

    body .widthM {
        width: 85%
    }

    .scrollHint .scroll-hint-icon {
        height: 95px
    }

    @-webkit-keyframes KVanim {

        0%,
        to {
            -webkit-transform: translate(2.5%, 0) scale(1.1);
            transform: translate(2.5%, 0) scale(1.1)
        }

        50% {
            -webkit-transform: translate(-2.5%, 0) scale(1.1);
            transform: translate(-2.5%, 0) scale(1.1)
        }
    }

    @keyframes KVanim {

        0%,
        to {
            -webkit-transform: translate(2.5%, 0) scale(1.1);
            transform: translate(2.5%, 0) scale(1.1)
        }

        50% {
            -webkit-transform: translate(-2.5%, 0) scale(1.1);
            transform: translate(-2.5%, 0) scale(1.1)
        }
    }

    header .fullMenu {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    header .fullMenu .imgArea {
        width: 100%;
        height: 40vh
    }

    header .fullMenu .navArea {
        width: 100%;
        padding: 10rem;
        overflow-y: scroll
    }

    header .headerArea {
        padding-right: 0
    }

    header .headerArea .logoArea {
        padding: 0 0 0 2.5rem
    }

    #topPage .Section {
        padding: 15rem 0 20rem
    }

    #topPage .Contents {
        margin: 0 auto
    }

    #topPage h3 {
        position: relative;
        top: auto;
        left: auto;
        margin: 0 auto 6.5rem;
        width: 100%;
        text-align: center;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        font-size: 2.4rem
    }

    #topPage h3:after {
        width: 3rem;
        height: 1px !important;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    #topPage h2 {
        font-size: 5rem;
        line-height: 5rem;
        text-align: center;
        margin: 0 0 8rem
    }

    #topPage #About .blockHolder,
    #topPage #Project .blockHolder {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 12rem
    }

    #topPage #About .blockHolder .block,
    #topPage #Project .blockHolder .block {
        width: 100%
    }

    #topPage #Jobs .Holder {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    #topPage #Jobs .Holder .textArea {
        width: 100%
    }

    #topPage #Jobs .Holder .textArea p {
        padding: 0
    }

    #topPage #Jobs .Holder .textArea .viewMore {
        margin: 0 auto
    }

    #topPage #Jobs .Holder .imgArea {
        width: 100%;
        margin: 0 0 5rem
    }

    #topPage #Members .textArea {
        text-align: center
    }

    #topPage #Members .scrollArea {
        width: 100%
    }

    #topPage #Project .ttlBlock {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin: 0 0 5rem
    }

    #topPage #Project .ttlBlock h2 {
        width: 100%;
        margin: 0 0 8rem;
        font-size: 5.25rem
    }

    #topPage #Others h3 {
        margin: 0 0 12rem
    }

    #topPage #Others .blockHolder {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 8rem;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    #topPage #Others .blockHolder .block .ttlArea {
        font-size: 5rem;
        line-height: 5rem
    }

    .lowPage .widthS {
        width: 85%
    }

    .lowPage #KV .depArea {
        right: 8rem
    }

    .lowPage #KV .imgHolder {
        top: 6.5rem;
        height: auto;
        aspect-ratio: 3/2
    }

    .lowPage .smallBlockHolder .smallBlock.block3 {
        width: 100%
    }

    .lowPage .smallBlockHolder .smallBlock.block3 .textArea {
        padding: 3rem
    }

    .lowPage .smallBlockHolder .smallBlock .textArea.a-l {
        padding: 2.3rem 1.7rem 2rem
    }

    .lowPage .smallBlockHolder .smallBlock .textArea.a-l .post {
        text-align: center
    }

    .lowPage .smallBlockHolder .smallBlock .textArea.a-l .name {
        text-align: center
    }

    .lowPage .smallBlockHolder .smallBlock .textArea.a-l .details {
        text-align: center
    }

    .lowPage .smallBlockHolder .smallBlock.center .textArea {
        padding: 3rem
    }

    .lowPage .ttlRow {
        padding-top: 0.15em;
        font-size: 3rem
    }

    .lowPage .gridHolder {
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr
    }

    .lowPage .pullDownContents .List .row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .lowPage .pullDownContents .List .row .ttl {
        width: 100%
    }

    .lowPage .pullDownContents .List .row .text {
        width: 100%;
        margin: 1.5rem 0 0
    }

    .lowPage #Numbers .blockHolder .row .block .tableContents .note {
        font-size: 1.4rem
    }

    .lowPage #Numbers .blockHolder .row .block .contents span.num {
        font-size: 6rem
    }

    .lowPage #Numbers .blockHolder .row .block .contents .tworow {
        font-size: 1.4rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea {
        height: 8rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea.small {
        padding: 4rem 1rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea.small p {
        font-size: 1.4rem;
        line-height: 100%;
        margin-bottom: 0.5rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea p {
        font-size: 1.6rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea p.small {
        font-size: 1.3rem;
        line-height: 100%
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea:after {
        width: 4rem;
        height: 4rem;
        right: 1.5rem
    }

    .lowPage #Modal .modalArea {
        width: 85%;
        height: 80vh;
        aspect-ratio: auto
    }

    .lowPage #Modal .modalArea .Contents {
        gap: 0;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%;
        -webkit-box-orient: unset !important;
        -webkit-box-direction: unset !important;
        -ms-flex-direction: unset !important;
        flex-direction: unset !important;
        padding: 7rem 6.5rem;
        overflow-y: scroll;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-line-pack: start;
        align-content: flex-start
    }

    .lowPage #Modal .modalArea .Contents .col .link {
        margin: 2rem auto 4rem;
        width: 100%
    }

    .lowPage #Modal .modalArea .Contents .col .link span {
        font-size: 1.6rem
    }

    .lowPage #Modal .modalArea .Contents .col:first-child {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        height: auto;
        width: 100%
    }

    .lowPage #Modal .modalArea .Contents .col:nth-child(2) {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: 100%;
        -webkit-box-orient: unset;
        -webkit-box-direction: unset;
        -ms-flex-direction: unset;
        flex-direction: unset;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto;
        margin: 1rem auto 0
    }

    .lowPage #Modal .modalArea .Contents .col:nth-child(2) img {
        width: 50%;
        height: auto;
        aspect-ratio: 1/1
    }

    .lowPage #Modal .modalArea.machineModal .Contents .col.machine img {
        margin: 0 auto
    }

    .lowPage #JobChart .Section .Contents,
    .lowPage #Matrix .Section .Contents {
        overflow-x: scroll
    }

    .lowPage #JobChart .Section .Contents .imgArea img,
    .lowPage #Matrix .Section .Contents .imgArea img {
        width: 93rem
    }

    .lowPage #BusinessContents .ttlEN {
        margin: 0 auto 5rem
    }

    .lowPage #BusinessContents .imgArea {
        -webkit-transform: scale(0.8);
        -ms-transform: scale(0.8);
        transform: scale(0.8)
    }

    .lowPage #BusinessContents .Contents {
        width: 85%
    }

    .lowPage #Semiconductor .lineTtl:after,
    .lowPage #Semiconductor .lineTtl:before {
        width: 36%
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .imgArea {
        width: 40%
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .textArea {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 1rem;
        text-align: left;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .textArea .name {
        text-align: left;
        margin: 0 0 1rem
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .textArea .details {
        -webkit-box-flex: initial;
        -ms-flex: initial;
        flex: initial
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .linkArea.none {
        height: 0
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock.member .textArea {
        padding: 3rem 2rem
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl .ttl {
        font-size: 2.4rem
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail img {
        height: 22rem
    }

    .lowPage #Measurement .flowBlock .imgArea {
        width: 100%
    }

    .lowPage#features.project #Copy .gridHolder {
        -ms-grid-columns: unset;
        grid-template-columns: unset;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2rem
    }

    .lowPage#features.project #Copy .gridHolder .grid {
        width: calc((100% - 4rem) / 3)
    }

    .lowPage#features.project #Copy .gridHolder .grid:last-child {
        width: 100%;
        aspect-ratio: 7/2
    }

    .lowPage #FeaturesContents .blockHolder {
        width: 85%;
        margin: 0 auto
    }

    .lowPage #FeaturesContents .Block {
        width: 100%;
        gap: 4rem;
        margin: 0 0 8rem
    }

    .lowPage #FeaturesContents .Block.textR {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .lowPage #FeaturesContents .Block .textArea h4 {
        font-size: 2.4rem;
        line-height: 3.6rem
    }

    .lowPage #FeaturesContents .Block .textArea .num {
        margin: 0 0 1.2rem;
        text-align: center
    }

    .lowPage #FeaturesContents .Block .textArea h4 {
        text-align: center
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 {
        width: calc((100% - 4.2rem) / 3)
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 .textArea {
        padding: 2rem 1rem
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 .textArea .post {
        font-size: 1.4rem
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 .textArea .details {
        font-size: 1.4rem;
        line-height: 2.8rem
    }

    .lowPage #projectContents .Block {
        width: 75%;
        margin: 0 auto 10rem auto
    }

    .lowPage #projectContents .Block.textR {
        margin: 0 auto 10rem auto
    }

    .lowPage #projectContents .Block .imgArea {
        width: 100%
    }

    .lowPage.people #Copy .Section {
        padding: 20rem 0 14rem
    }

    .lowPage.people #Copy .textHolder {
        margin: 0 auto;
        padding: 0
    }

    .lowPage.people #Copy .textHolder .textArea {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: left
    }

    .lowPage.people #Copy .textHolder .textArea h3 {
        font-size: 3.5rem;
        line-height: 5.25rem;
        margin: 0 0 4.5rem
    }

    .lowPage.people #Copy .depArea .Holder {
        right: 8rem
    }

    .lowPage.people #Copy .depAreaSP {
        width: 100%;
        margin: 0 auto auto;
        position: absolute;
        top: 0
    }

    .lowPage.people #Copy .depAreaSP .Holder {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 2rem 0
    }

    .lowPage.people #Copy .depAreaSP .Holder .dep {
        font-size: 1.8rem
    }

    .lowPage.people #Copy .depAreaSP .Holder .dep.small {
        font-size: 1.5rem
    }

    .lowPage #peopleContents .blockHolder {
        width: 75%;
        margin: 0 auto
    }

    .lowPage #peopleContents .Block {
        width: 100%;
        gap: 4rem;
        margin: 0 0 8rem
    }

    .lowPage #peopleContents .Block.textR {
        margin: 0 0 8rem;
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .lowPage #peopleContents .Block:last-child {
        margin: 0
    }

    .lowPage #peopleContents .Block .imgArea {
        padding: 0;
        margin: 0 0 0 auto;
        width: 100%
    }

    .lowPage #Schedule .scheduleHolder .row .plan {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .lowPage #Schedule .scheduleHolder .row .plan p {
        width: 100%
    }

    .lowPage #Schedule .scheduleHolder .row .plan .details {
        margin: 1rem 0 0;
        width: 100%
    }

    .lowPage #Systems .gridHolder {
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr
    }

    .lowPage #Numbers .graph {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .lowPage #Numbers .graph img {
        width: 90%;
        -o-object-fit: contain;
        object-fit: contain;
        margin: 0 auto
    }

    .lowPage #Seminar .seminarBlock {
        width: 100%
    }

    .lowPage #Seminar .seminarBlock .linkArea {
        gap: 3rem
    }

    .lowPage #Seminar .seminarBlock .linkArea .link {
        width: calc((100% - 3rem) / 2)
    }

    footer .Section {
        height: initial;
        padding: 15rem 0 7.5rem !important
    }

    footer .Section .footerTop {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin: 0 auto 2.5rem
    }

    footer .Section .footerTop nav {
        width: 100%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 2rem 0 0
    }

    footer .Section .footerTop nav dl {
        margin: 0
    }

    footer .Section .footerTop .entryBlock {
        margin: 8rem auto;
        width: 100%
    }

    footer .Section .footerTop .entryBlock span {
        width: 100%
    }

    footer .Section .footerBottom {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    footer .Section .footerBottom ul {
        width: 100%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    footer .Section .footerBottom ul li a {
        margin: 0 2rem 0 0
    }

    footer .Section .footerBottom .copy {
        margin: 2rem auto 0
    }

    /* パパママ　追加　書き足したCSS タブレット */ 
    .centerBar .inner {
        font-size: 2.7rem;
    }

    .parentalleave .centerBlock {
        margin-bottom: 10.1rem !important;
       }
}

@media only screen and (max-width:480px) {
    .pc {
        display: none
    }

    .sp {
        display: block
    }

    .tb {
        display: none
    }

    .pctb {
        display: none
    }

    .pcsp {
        display: block
    }

    .tbsp {
        display: block
    }

    .sp-c {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .sp-cr {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .sp-w100 {
        width: 100% !important
    }

    .fontJP_M {
        font-weight: 400
    }

    html {
        font-size: 266.6%;
        font-size: 2.666vw
    }

    body {
        font-size: 1.25rem;
        line-height: 2.5rem
    }

    .viewMore {
        width: 100%;
        font-size: 1.5rem;
        padding: 2.8rem 2.5rem
    }

    header .headerArea {
        height: 6.5rem
    }

    header .headerArea .logoArea {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 0 0 0 2rem;
        gap: 1.75rem
    }

    header .headerArea .logoArea img {
        width: 16rem
    }

    header .headerArea .logoArea .text {
        font-size: 1.35rem
    }

    header .menuArea .menubar {
        width: 6.5rem;
        height: 6.5rem
    }

    header .fullMenu {
        top: 6.5rem;
        overflow-y: scroll
    }

    header .fullMenu .entryArea {
        width: 100%;
        background-color: #003472;
        padding: 0;
        text-align: center;
        font-size: 1.4rem
    }

    header .fullMenu .entryArea li {
        position: relative;
        border-bottom: 1px solid #eeeeee;
        height: 5rem;
        padding: 1.2rem 0 0
    }

    header .fullMenu .entryArea li a {
        color: #FFFFFF
    }

    header .fullMenu .navArea {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        text-align: left;
        padding: 14rem 0 15rem
    }

    header .fullMenu .navArea nav {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    header .fullMenu .navArea nav dl {
        margin: 0 0 4rem !important
    }

    header #entryAreaSP {
        position: fixed;
        width: 100vh;
        height: 6.5rem;
        top: 0;
        left: 0;
        z-index: 2
    }

    header #entryAreaSP .Holder {
        position: relative;
        width: 100vw;
        height: 100%;
        background-color: #003472;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 2rem
    }

    header #entryAreaSP .Holder ul {
        background-color: #003472;
        color: #FFFFFF;
        text-align: center;
        -webkit-transition: 0.6s;
        -o-transition: 0.6s;
        transition: 0.6s;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    header #entryAreaSP .Holder ul li {
        height: 6.5rem;
        width: 50%
    }

    header #entryAreaSP .Holder ul li a {
        padding: 1.9rem 0 0 3rem;
        text-align: left;
        position: relative;
        color: #FFFFFF;
        font-size: 1.4rem;
        display: block;
        width: 100%;
        height: 100%
    }

    header #entryAreaSP .Holder ul li a:after {
        content: "";
        display: block;
        position: absolute;
        width: 1.4rem;
        height: 1.4rem;
        background-image: url("../img/newpage.webp");
        background-size: contain;
        background-repeat: no-repeat;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
        top: 50%;
        right: 2.5rem;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

    header #entryAreaSP .Holder ul li:nth-child(2n) {
        border-left: 1px solid #f4f4f6
    }

    header #scrollTop {
        bottom: 9rem;
        right: 0.7rem
    }

    #topPage .Section {
        padding: 12rem 0 16rem
    }

    #topPage h3 {
        font-size: 2rem;
        margin: 0 auto 4.6rem
    }

    #topPage h3:after {
        top: calc(100% + 1.8rem)
    }

    #topPage h2 {
        font-size: 3.2rem;
        margin: 0 0 6rem
    }

    #topPage #scrollDown {
        top: 98vh
    }

    #topPage #KV {
        height: 100vh
    }

    #topPage #KV h1 .mainttl {
        font-size: 2.6rem;
        line-height: 3.6rem;
        margin: 0 0 1.2rem
    }

    #topPage #KV h1 .subttl {
        font-size: 1.4rem;
        line-height: 2.4rem
    }

    #topPage #KV .scrollDown {
        font-size: 1.2rem
    }

    #topPage #Copy h3 {
        margin: 0 auto 2rem
    }

    #topPage #Copy h2 {
        font-size: 4rem;
        line-height: 6rem;
        margin: 0 0 6rem
    }

    #topPage #Copy h2 .copyAnim:first-child {
        padding: 0 0 0 3rem
    }

    #topPage #Copy .copy {
        line-height: 2.8rem;
        font-size: 1.25rem
    }

    #topPage #Copy .copy p {
        margin: 0 0 1.6rem
    }

    #topPage #About .blockHolder .block .textArea .ttlArea {
        font-size: 2.4rem
    }

    #topPage #Members .swiper .swiper-slide {
        width: 20rem;
        padding: 0;
        opacity: 1;
        -webkit-transition: 0.5s;
        -o-transition: 0.5s;
        transition: 0.5s
    }

    #topPage #Members .swiper .swiper-slide.swiper-slide-next,
    #topPage #Members .swiper .swiper-slide.swiper-slide-prev {
        pointer-events: none;
        opacity: 0.3
    }

    #topPage #Members .swiper .swiper-slide .memberBlock .imgArea {
        margin: 0 0 1.2rem
    }

    #topPage #Members .swiper .swiper-slide .memberBlock .dep span {
        padding: 0.8rem 0.8rem 0.8rem;
        font-size: 1.2rem
    }

    #topPage #Members .swiper .swiper-slide .memberBlock .tags {
        padding: 0;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 0.5rem 0
    }

    #topPage #Members .swiper .swiper-slide .memberBlock .tags span {
        font-size: 1.2rem;
        line-height: 1.2rem
    }

    #topPage #Members .scrollArea {
        margin: 0;
        z-index: 10
    }

    #topPage #Members .scrollArea .swiper-scrollbar {
        display: none
    }

    #topPage #Members .scrollArea .swiper-button-next,
    #topPage #Members .scrollArea .swiper-button-prev {
        top: -23.2rem;
        z-index: auto
    }

    #topPage #Members .scrollArea .swiper-button-prev {
        left: 0.8rem
    }

    #topPage #Members .scrollArea .swiper-button-next {
        right: 0.8rem
    }

    #topPage #Project .ttlBlock h2 {
        font-size: 2.75rem;
        line-height: 2.75rem;
        margin: 0 0 6rem
    }

    #topPage #Project .blockHolder .block .textArea .ttlArea {
        font-size: 2.4rem
    }

    #topPage #Others .blockHolder .block {
        width: 100%
    }

    #topPage #Others .blockHolder .block .ttlArea {
        font-size: 3.2rem
    }

    .lowPage .Section {
        padding: 12rem 0 16rem
    }

    .lowPage .ttlAnim.m-b {
        margin-bottom: 0.75rem
    }

    .lowPage h2 {
        font-size: 3.2rem;
        line-height: 3.2rem;
        margin: 0 auto 1.6rem
    }

    .lowPage .ttlEN {
        font-size: 1.6rem;
        line-height: 1.6rem
    }

    .lowPage .ttlEN:after {
        top: 3.6rem;
        width: 2rem
    }

    .lowPage .ttlRow {
        line-height: 140%;
        padding: 0.6rem 0 0.5rem;
        font-size: 2rem
    }

    .lowPage .ttlRow.pullDown:after,
    .lowPage .ttlRow.pullDown:before {
        width: 2rem;
        right: 1.8rem
    }

    .lowPage .ttlArea h2 {
        font-size: 3rem;
        margin: 0 auto 2rem
    }

    .lowPage .ttlArea .ttlEN {
        font-size: 1.5rem
    }

    .lowPage .ttlArea .row {
        gap: 1rem
    }

    .lowPage .ttlArea .row .icon {
        height: 4rem
    }

    .lowPage .pullDownContents .List .row {
        padding: 2rem 0 2.6rem
    }

    .lowPage .pullDownContents .List .row .ttl {
        font-size: 2rem
    }

    .lowPage #Members .swiper .swiper-slide {
        width: 20rem;
        padding: 0;
        opacity: 1;
        -webkit-transition: 0.5s;
        -o-transition: 0.5s;
        transition: 0.5s
    }

    .lowPage #Members .swiper .swiper-slide.swiper-slide-next,
    .lowPage #Members .swiper .swiper-slide.swiper-slide-prev {
        pointer-events: none;
        opacity: 0.3
    }

    .lowPage #Members .swiper .swiper-slide .memberBlock .imgArea {
        margin: 0 0 1.2rem
    }

    .lowPage #Members .swiper .swiper-slide .memberBlock .dep span {
        padding: 0.9rem 0.8rem 0.8rem;
        font-size: 1.2rem
    }

    .lowPage #Members .swiper .swiper-slide .memberBlock .tags {
        padding: 0;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 0.5rem 0
    }

    .lowPage #Members .swiper .swiper-slide .memberBlock .tags span {
        font-size: 1.2rem;
        line-height: 1.2rem
    }

    .lowPage #Members .scrollArea {
        margin: 0;
        z-index: 10
    }

    .lowPage #Members .scrollArea .swiper-scrollbar {
        display: none
    }

    .lowPage #Members .scrollArea .swiper-button-next,
    .lowPage #Members .scrollArea .swiper-button-prev {
        top: -23.2rem;
        z-index: auto
    }

    .lowPage #Members .scrollArea .swiper-button-prev {
        left: 0.2rem
    }

    .lowPage #Members .scrollArea .swiper-button-next {
        right: 0.2rem
    }

    .lowPage .smallBlockHolder .smallBlock.block2,
    .lowPage .smallBlockHolder .smallBlock.block3 {
        width: 100% !important
    }

    .lowPage .smallBlockHolder .smallBlock.block2 .textArea,
    .lowPage .smallBlockHolder .smallBlock.block3 .textArea {
        max-width: 100% !important;
        margin: 0 auto 2rem !important
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 {
        width: calc((100% - 4.2rem) / 3)
    }

    .lowPage#features.project .smallBlockHolder .smallBlock.block3 .textArea {
        padding: 3rem
    }

    .lowPage #KV {
        height: 40rem;
        margin: 6.5rem auto 0;
        aspect-ratio: 3/2;
        height: auto
    }

    .lowPage #KV .KVArea {
        height: 40rem
    }

    .lowPage #KV h1 {
        height: 32.5rem
    }

    .lowPage #KV h1 .mainttl {
        font-size: 3.6rem;
        line-height: 100%
    }

    .lowPage #KV h1 .mainttl.small {
        font-size: 3.2rem
    }

    .lowPage #KV h1 .mainttl .subttl {
        font-size: 1.4rem;
        line-height: 2.4rem;
        top: -3rem
    }

    .lowPage #KV h1 .mainttl .ttlJP {
        font-size: 2rem;
        top: 5rem
    }

    .lowPage #KV .depArea {
        width: 100%;
        height: auto;
        padding: 2rem 4rem;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin: auto auto 0 auto
    }

    .lowPage #KV .depArea .dep {
        font-size: 1.8rem;
        line-height: 1.8rem
    }

    .lowPage #KV .depArea .details {
        font-size: 1.4rem;
        line-height: 1.4rem
    }

    .lowPage #KV h1 {
        width: 100%;
        height: 100%
    }

    .lowPage #Copy .Section .textArea {
        font-size: 1.4rem;
        line-height: 3.2rem;
        text-align: center;
        margin: 0 auto 7rem;
        width: 100%
    }

    .lowPage #Copy .Section .textArea .note {
        line-height: 175%;
        margin-top: 1.5rem
    }

    .lowPage .gridHolder .grid .gridContents .text {
        font-size: 1.75rem
    }

    .lowPage .smallBlockHolder .smallBlock .textArea .name {
        font-size: 2rem
    }

    .lowPage .smallBlockHolder .smallBlock.center .textArea .name {
        font-size: 2rem
    }

    .lowPage #Modal .modalArea .Contents {
        padding: 6rem 2rem;
        gap: 2rem;
        overflow-y: scroll
    }

    .lowPage #Modal .modalArea .Contents .col h2 {
        font-size: 2rem
    }

    .lowPage #Modal .modalArea .Contents .col .link {
        padding: 2.25rem 6.5rem 2.25rem 2.5rem;
        height: auto
    }

    .lowPage #Modal .modalArea .Contents .col .link:after {
        right: 1.4rem
    }

    .lowPage #Modal .modalArea.machineModal .Contents .col .imgTtl {
        font-size: 1.8rem;
        text-align: center;
        padding: 0.7rem 0 0
    }

    .lowPage #Modal .modalArea.machineModal .Contents .col.machine img {
        width: 78vw
    }

    .lowPage #Numbers .blockHolder .row .block .ttl {
        font-size: 2rem;
        height: 4.25rem
    }

    .lowPage #Numbers .blockHolder .row .block .tableContents {
        font-size: 1.6rem
    }

    .lowPage #Numbers .blockHolder .row .block .tableContents .num {
        font-size: 4rem
    }

    .lowPage #Numbers .blockHolder .row .block .tableContents .small {
        font-size: 1.25rem
    }

    .lowPage #Numbers .blockHolder .row .block .tableContents .note {
        margin: 1rem 1rem 0 auto
    }

    .lowPage #Numbers .blockHolder .row .block .contents span.text {
        font-size: 1.6rem
    }

    .lowPage #Numbers .blockHolder .row .block .contents span.num {
        font-size: 5.5rem
    }

    .lowPage #Numbers .blockHolder .row .block .contents .tworow {
        height: auto
    }

    .lowPage #Recommend .blockHolder {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .lowPage #Recommend .blockHolder .contentsBlock {
        width: 100%
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea {
        height: auto;
        padding: 4rem 2rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea p {
        font-size: 1.6rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea.small {
        padding: 4rem 2rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea.small p {
        font-size: 1.6rem
    }

    .lowPage #Recommend .blockHolder .contentsBlock .textArea:after {
        width: 4rem;
        height: 4rem;
        right: 1.5rem
    }

    .lowPage #BusinessContents .imgArea {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9)
    }

    .lowPage #BusinessContents .imgArea .ttl {
        width: 100%;
        font-size: 1.6rem;
        top: 1rem;
        height: 3rem;
        padding: 0.15rem 0 0
    }

    .lowPage #BusinessContents .imgArea .link {
        height: 2.25rem;
        font-size: 1.4rem;
        bottom: 1rem;
        position: relative
    }

    .lowPage #BusinessContents .imgArea .link span {
        position: absolute;
        white-space: nowrap;
        line-height: 100%;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-45%, -50%);
        -ms-transform: translate(-45%, -50%);
        transform: translate(-45%, -50%)
    }

    .lowPage #BusinessContents .imgArea .link:after {
        width: 2rem;
        height: 2rem
    }

    .lowPage #BusinessContents .boxTtl {
        font-size: 1.7rem;
        padding: 2rem 0
    }

    .lowPage #BusinessContents .boxContents {
        padding: 4.5rem 2rem
    }

    .lowPage #BusinessContents .boxContents h4 {
        font-size: 2rem;
        line-height: 150%
    }

    .lowPage #BusinessContents .otherLink {
        padding: 2.2rem 0 0;
        text-align: left
    }

    .lowPage #BusinessContents .otherLink:after {
        right: 5.5rem
    }

    .lowPage #BusinessContents .otherLink span {
        font-size: 1.6rem;
        padding-right: 1.5rem;
        right: initial;
        left: 6rem
    }

    .lowPage #BusinessContents .otherLink span:after {
        width: 1.1rem;
        height: 1.1rem
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 3rem 1rem
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .textArea {
        width: 100%;
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        height: auto
    }

    .lowPage #Semiconductor .smallBlockHolder .smallBlock .Holder .textArea .name {
        text-align: center;
        font-size: 2rem
    }

    .lowPage #Semiconductor .Section {
        padding: 12rem 0 6rem
    }

    .lowPage #Semiconductor .lineTtl {
        font-size: 2rem
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl {
        width: 100%;
        text-align: center
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl .top {
        width: 100%;
        margin: 0 0 2rem
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl .ttl {
        font-size: 2rem;
        margin: 0 0 0.6rem
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockTtl .subttl {
        width: 100%
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail {
        width: 100%;
        margin: 2rem auto 0
    }

    .lowPage #Measurement .machineBlockHolder .machineBlock .blockDetail .detail p {
        min-height: initial
    }

    .lowPage #Measurement .flowBlock .ttl {
        font-size: 2rem
    }

    .lowPage #Measurement .flowBlock p {
        line-height: 200%
    }

    .lowPage #Measurement .flowBlock .imgArea {
        height: 12rem;
        overflow: scroll;
        margin: 2rem auto 3rem
    }

    .lowPage #Measurement .flowBlock .imgArea img {
        height: 100%;
        width: auto
    }

    .lowPage #Measurement .flowBlock .imgArea .labelHolder {
        height: 12rem;
        width: auto;
        aspect-ratio: 1733/246
    }

    .lowPage #Measurement .flowBlock .imgArea .labelHolder .label {
        width: 14.2857142857%;
        padding: 3.4rem 0 0
    }

    .lowPage #FeaturesContents .Block .textArea .num {
        margin: 0 0 1.2rem
    }

    .lowPage #FeaturesContents .Block .textArea .num span {
        font-size: 5rem;
        line-height: 5rem
    }

    .lowPage #FeaturesContents .Block .textArea h4 {
        font-size: 2rem;
        line-height: 3.2rem
    }

    .lowPage #projectContents .Block {
        width: 85%
    }

    .lowPage #projectContents .Block .textArea h4 {
        margin: 0 0 3.4rem
    }

    .lowPage #projectContents .Block .textArea h4 span {
        font-size: 2rem;
        padding: 0.1rem 1rem 0;
        line-height: 4rem
    }

    .lowPage #projectContents .Block .textArea h4 span.small {
        font-size: 2rem
    }

    .lowPage #projectContents .Block .textArea h4 span.pr--0 {
        padding: 0.1rem 1.5rem 0 0
    }

    .lowPage #projectContents .Block .textArea .interviewArea .row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .lowPage #projectContents .Block .textArea .interviewArea .row .name,
    .lowPage #projectContents .Block .textArea .interviewArea .row p {
        width: 100%;
        font-size: 1.4rem
    }

    .lowPage #projectContents .Block .textArea .messageArea .row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 auto 4rem
    }

    .lowPage #projectContents .Block .textArea .messageArea .row .icon,
    .lowPage #projectContents .Block .textArea .messageArea .row p {
        width: 100%;
        text-align: center;
        margin: 0 auto
    }

    .lowPage #projectContents .Block .textArea .messageArea .row p {
        margin: 2rem auto 0;
        font-size: 1.4rem;
        text-align: left
    }

    .lowPage#features.project #Copy .gridHolder .grid {
        width: calc((100% - 2rem) / 2)
    }

    .lowPage#features.project #Copy .gridHolder .numberGrid {
        aspect-ratio: 2.13/1 !important
    }

    .lowPage .voices .row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .lowPage .voices .row .imgArea {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: unset;
        -webkit-box-direction: unset;
        -ms-flex-direction: unset;
        flex-direction: unset
    }

    .lowPage .voices .row .imgArea img {
        width: 5rem
    }

    .lowPage .voices .row .imgArea .name {
        text-align: left;
        margin: 0 auto 0 2rem
    }

    .lowPage .voices .row .imgArea .name br {
        display: none
    }

    .lowPage .voices .row .bubbleArea {
        width: 100%;
        margin-top: 1.4rem
    }

    .lowPage .voices .row .bubbleArea .bubble {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        top: -2.7rem;
        left: 8.4rem;
        right: 0
    }

    .lowPage #Systems .gridHolder {
        -ms-grid-columns: unset;
        grid-template-columns: unset
    }

    .lowPage #Systems .gridHolder .grid {
        width: 100%
    }

    .lowPage #Numbers .blockHolder .row {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .lowPage #Numbers .blockHolder .row .block {
        width: 100% !important
    }

    .lowPage.people #Copy .Section {
        padding: 20rem 0 14rem
    }

    .lowPage.people #Copy .textHolder {
        margin: 0 auto;
        padding: 0;
        width: 85%
    }

    .lowPage.people #Copy .textHolder .textArea {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: left
    }

    .lowPage.people #Copy .textHolder .textArea h3 {
        font-size: 2rem;
        line-height: 3.2rem;
        margin: 0 0 4.5rem
    }

    .lowPage.people #Copy .depArea {
        width: 100%;
        margin: 0 auto;
        position: absolute;
        top: 0;
        font-size: 1.2rem;
        line-height: 2.4rem
    }

    .lowPage.people #Copy .depArea .Holder {
        width: 100%;
        height: auto;
        padding: 2rem 4rem;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start;
        font-size: 1.4rem;
        line-height: 2.8rem;
        margin: 0 0 auto auto
    }

    .lowPage #peopleContents .blockHolder {
        width: 75%;
        margin: 0 auto
    }

    .lowPage #peopleContents .Block {
        width: 100%;
        gap: 4rem;
        margin: 0 0 8rem
    }

    .lowPage #peopleContents .Block.textR {
        margin: 0 0 8rem;
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .lowPage #peopleContents .Block:last-child {
        margin: 0
    }

    .lowPage #peopleContents .Block .textArea h4 {
        font-size: 2rem;
        line-height: 3.2rem
    }

    .lowPage #peopleContents .Block .imgArea {
        padding: 0;
        margin: 0 0 0 auto
    }

    .lowPage #Schedule .scheduleHolder {
        width: 85%
    }

    .lowPage #Schedule .scheduleHolder .row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        font-size: 1.6rem;
        line-height: 3.2rem
    }

    .lowPage #Schedule .scheduleHolder .row .time {
        padding: 0.75rem 1.5rem;
        width: 100%;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .lowPage #Schedule .scheduleHolder .row .plan {
        padding: 0.75rem 1.5rem 1rem;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .lowPage #Schedule .scheduleHolder .row .plan p {
        width: 100%
    }

    .lowPage #Schedule .scheduleHolder .row .plan .details {
        margin: 0.5rem 0 0;
        width: 100%;
        font-size: 1.2rem;
        line-height: 2.4rem
    }

    .lowPage #Schedule .scheduleHolder .line {
        left: 3.6rem
    }

    .lowPage #InfoMenu .gridHolder .grid {
        padding: 0.8rem 0.6rem 0 0
    }

    .lowPage #Guidelines .tableContents tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .lowPage #Guidelines .tableContents tr:first-child th {
        margin: 0 0 1rem
    }

    .lowPage #Guidelines .tableContents th {
        width: 100%;
        margin: 2.5rem 0 0.8rem
    }

    .lowPage #Guidelines .tableContents td {
        width: 100%;
        padding: 0.8rem 0 2.5rem
    }

    .lowPage #Guidelines #Flow .flowHolder .imgArea img {
        width: 100%
    }

    .lowPage #Guidelines #Flow .flowHolder .flowText .flowRow {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 4.5rem 1rem
    }

    .lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .ttl {
        width: 100%;
        font-weight: bold;
        font-size: 1.6rem
    }

    .lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .textArea {
        padding: 0;
        text-align: center;
        width: 100%
    }

    .lowPage #Guidelines #Flow .flowHolder .flowText .flowRow .textArea span {
        width: 100%;
        display: inline-block;
        line-height: 2rem
    }

    .lowPage #JobMenu .gridHolder {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }

    .lowPage #Seminar .ttlRow.no-mt {
        margin-top: 0
    }

    .lowPage #Seminar .seminarBlock {
        width: 100%
    }

    .lowPage #Seminar .seminarBlock .linkArea {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 1.5rem
    }

    .lowPage #Seminar .seminarBlock .linkArea .link {
        width: 100%;
        height: 6rem
    }

    .lowPage #FAQ .Section .List .row .q {
        font-size: 1.8rem
    }

    .lowPage #FAQ .Section .List .row .q:before {
        width: 1.5rem
    }

    .lowPage #FAQ .Section .List .row .a:before {
        width: 1.5rem
    }

    .lowPage #Contact .Section .Contents .details .row p:first-child:after {
        content: none
    }

    footer .Section {
        padding: 12rem 0 3rem !important
    }

    footer .Section .footerTop {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    footer .Section .footerTop .entryBlock {
        width: 100%;
        margin: 0 0 6rem;
        display: none
    }

    footer .Section .footerTop nav {
        padding: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: initial;
        margin: 0 auto
    }

    footer .Section .footerTop nav dl {
        margin: 0 0 4rem
    }

    footer .Section .footerBottom ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        font-size: 1.2rem;
        margin: 0 auto;
        width: initial;
        padding-right: 5rem
    }

    footer .Section .footerBottom ul li a {
        margin: 0
    }

    footer .Section .footerBottom .copy {
        margin: 5rem auto 0;
        font-size: 1rem
    }

   /* パパママ　追加した 書き足したcss スマホ */
   .parentalleave #KV h1 .mainttl .ttlJP_sp {
    font-size: 1.6rem;
   }

   .parentalleave .centerBlock {
    margin-bottom: 10.1rem !important;
   }

    .parentalleave #Copy .Section .textArea  {
    padding-top:1rem;
    margin: 0;
    }

    .centerBar {
        margin-bottom: 4.1rem;
    }

   .centerBar .innersp {
    margin-bottom: 0.7rem; 
    font-size: 2rem;
    line-height: 4rem; 
    padding: 0.1rem 0rem 0;
    }

}