@charset "UTF-8";
* {
    font-family: PingFang SC, Microsoft YaHei,-apple-system, BlinkMacSystemFont, Segoe UI, Hiragino Sans GB, Helvetica Neue, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
}

@font-face {
    font-weight: normal;
    font-style: normal;
    font-family: "dhf";
    src: url("/public/fonts/dhf.ttf") format("truetype"), url("/public/fonts/dhf.woff") format("woff"), url("/public/fonts/dhf.svg#dhf") format("svg");
}

@font-face {
    font-family: 'DINCond-Bold';
    src: url('../fonts/DINCond-Bold.otf');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'DINCond-Light';
    src: url('../fonts/DINCond-Light.otf');
    font-weight: normal;
    font-style: normal;
}
.div-hide{
    display: none!important;
}
.mobile-show{
    width: 100%;
    padding: 0 7.14286%;
    margin: 3rem 0 0;
}

.pro-flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
       .pro-flex li {
        width: 23%;
        text-align: center;
        margin-bottom: 2%;
    }

#fullpage {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 999999;
    display: none;
    background-color: rgba(0, 0, 0, .6);
}

#fullpage .content {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

#fullpage .content .mask {
    width: 90%;
    margin: 0 auto;
}

.video {
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    position: relative;
}

.video video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.flex {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flex li {
    margin-bottom: 2%;
}

.list-2 li {
    width: 48%;
}

.list-3 li {
    width: 31%;
}

.pro-list2 {
    margin-top: 40px;
}

.pro-list2 li {
    text-align: center;
    font-size: 0.75rem;
}

.am-dimmer-active {
    padding: 0 !important;
}

[class^="ico-"],
[class*=" ico-"] {
    text-transform: none;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "dhf" !important;
    line-height: 1;

    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.ico-arw_right:before {
    content: "";
}

.ico-dwg:before {
    content: "";
}

.ico-dxf:before {
    content: "";
}

.ico-jww:before {
    content: "";
}

.ico-pdf:before {
    content: "";
}

.ico-play:before {
    content: "";
}

.ico-anchor:before {
    content: "";
}

/*!
 * ress.css • v1.1.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
    overflow-y: scroll;
    box-sizing: border-box;
    /* All browsers without overlaying scrollbars */

    -webkit-text-size-adjust: 100%;
    /* iOS 8+ */
}

*,
::before,
::after {
    box-sizing: inherit;
}

::before,
::after {
    /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
    vertical-align: inherit;
    text-decoration: inherit;
}

/* Remove margin, padding of all elements and set background-no-repeat as default */
* {
    /* Reset `padding` and `margin` of all elements */
    margin: 0;
    /* Set `background-repeat: no-repeat` to all elements */
    padding: 0;
    background-repeat: no-repeat;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
    display: none;
    height: 0;
}

hr {
    overflow: visible;
    /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

summary {
    display: list-item;
    /* Add the correct display in all browsers */
}

small {
    font-size: 80%;
    /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
    display: none;
    /* Add the correct display in IE */
}

abbr[title] {
    border-bottom: 1px dotted;
    /* Add a bordered underline effect in all browsers */
    text-decoration: none;
    /* Remove text decoration in Firefox 40+ */
}

a {
    background-color: transparent;
    /* Remove the gray background on active links in IE 10 */

    -webkit-text-decoration-skip: objects;
    /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    /* Specify the font family of code elements */
}

b,
strong {
    font-weight: bolder;
    /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
    font-style: italic;
    /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
    background-color: #ff0;
    color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
    position: relative;
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
    border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
    cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
    cursor: default;
}

[type="number"] {
    width: auto;
    /* Firefox 36+ */
}

[type="search"] {
    -webkit-appearance: textfield;
    /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
    /* Safari 8 */
}

textarea {
    overflow: auto;
    /* Internet Explorer 11+ */
    resize: vertical;
    /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
    font: inherit;
    /* Specify font inheritance of form elements */
}

optgroup {
    font-weight: bold;
    /* Restore the font weight unset by the previous rule. */
}

button {
    overflow: visible;
    /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    /* Correct the inability to style clickable types in iOS */
}

button,
select {
    text-transform: none;
    /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
    border-style: none;
    background-color: transparent;
    color: inherit;
}

/* Style select like a standard input */
select {
    -moz-appearance: none;
    /* Firefox 36+ */
    -webkit-appearance: none;
    /* Chrome 41+ */
}

select::-ms-expand {
    display: none;
    /* Internet Explorer 11+ */
}

select::-ms-value {
    color: currentColor;
    /* Internet Explorer 11+ */
}

legend {
    /* Correct the color inheritance from `fieldset` elements in IE */
    display: table;
    /* Correct the text wrapping in Edge and IE */
    max-width: 100%;
    border: 0;
    /* Correct `color` not being inherited in IE 8/9/10/11 */
    color: inherit;
    /* Correct the text wrapping in Edge and IE */
    white-space: normal;
    /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
    /* Correct the inability to style clickable types in iOS and Safari */
    font: inherit;

    -webkit-appearance: button;
    /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
    /* Correct the odd appearance in Chrome and Safari */
    outline-offset: -2px;

    -webkit-appearance: textfield;
    /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
    border-style: none;
    /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
    vertical-align: baseline;
}

svg:not(:root) {
    overflow: hidden;
    /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
    display: inline-block;
    /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
    cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
    cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
    cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
    background-color: #b3d4fc;
    /* Required when declaring ::selection */
    color: #000;
    text-shadow: none;
}

::selection {
    background-color: #b3d4fc;
    /* Required when declaring ::selection */
    color: #000;
    text-shadow: none;
}

/* COLORS
================================================== */
/* COMPONENTS
================================================== */
/* easing
================================================== */
/* Sticky Footer
================================================== */
html,
body {
    margin: 0;
    min-width: 320px;
    height: 100%;
}

/* BODY
================================================== */
body {
    min-width: 320px;
    width: 100%;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;
    font-family: "Microsoft YaHei", sans-serif;
    line-height: 2;

    font-feature-settings: "pkna";
}

body > iframe,
body > img,
body > div:not([class]) > iframe,
body > div:not([class]) > img {
    display: none;
}

p:not(.is-nonspace),
dt:not(.is-nonspace),
dd:not(.is-nonspace),
span:not(.is-nonspace),
a:not(.is-nonspace),
li:not(.is-nonspace) {
    letter-spacing: .05em;
}

a {
    text-decoration: none;
    cursor: pointer;
}

li {
    list-style-type: none;
}

figure {
    text-align: center;
}

img {
    vertical-align: top;
}

img:not(.cover),
video:not(.cover) {
    max-width: 100%;
}

img.cover,
video.cover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: 100%;
    font-family: "object-fit: cover; object-position: center;";

    object-fit: cover;
    object-position: center;
}

button {
    border-radius: 0;
    font-style: normal;

}

input,
textarea {
    border-radius: 0;
}

@keyframes scrolldown {
    0% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    33% {
        transform: scale(1, 0);
        transform-origin: 100% 100%;
    }
    66% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
}

@keyframes scrolldown2 {
    0% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    55% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    70% {
        transform: scale(1, 0);
        transform-origin: 100% 100%;
    }
    85% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
}

@keyframes scrollup {
    0% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    33% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    66% {
        transform: scale(1, 0);
        transform-origin: 100% 100%;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
}

@keyframes scrollup2 {
    0% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    15% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    30% {
        transform: scale(1, 0);
        transform-origin: 100% 100%;
    }
    45% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
}

@keyframes sound {
    0% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    20% {
        transform: scale(0, 1);
        transform-origin: 100% 100%;
    }
    40% {
        transform: scale(0, 1);
        transform-origin: 0 0;
    }
    60% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
}

@keyframes btnline {
    0% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    33% {
        transform: scale(0, 1);
        transform-origin: 100% 100%;
    }
    66% {
        transform: scale(0, 1);
        transform-origin: 0 0;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
}

@keyframes btntate {
    0% {
        transform: scale(1, 1);
        transform-origin: 100% 100%;
    }
    33% {
        transform: scale(1, 0);
        transform-origin: 100% 100%;
    }
    66% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    100% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
}

@keyframes loading {
    0% {
        background-position: left center;
    }
    100% {
        background-position: right center;
    }
}

.bx-wrapper,
.bx-viewport {
    height: 100%;
}

.p-country-name {
    display: none;
}

.l-breadcrumb {
    position: relative;
    padding: 13px 6.4%;
}

.l-breadcrumb:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 4px;
    background-image: linear-gradient(90deg, #00498d, #00bacf);
    content: "";
}

.l-breadcrumb meta {
    display: none;
}

.l-breadcrumb span[property="name"] {
    padding: 0 1em;
    color: #000;
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.5;
}

.l-breadcrumb a span[property="name"] {
    text-decoration: underline;
}

.l-breadcrumb__top {
    padding-left: 0 !important;
}

.l-breadcrumb--white {
    z-index: 2;
}

.l-col2 {
    display: -ms-flexbox;
    display: flex;
    width: 100%;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.l-col2 > div {
    width: 100%;
}

.l-col2 .c-olst__img {
    margin-left: 6.4%;
    width: 92.5%;
}

.l-col2 .c-olst__txtarea {
    margin-top: 10px;
    padding: 0 6.4%;
}

.l-col2--reverse {
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
}

.l-col2--reverse .c-olst__img {
    margin-left: 0;
}

.l-contact {
    padding: 40px 6.4% 0;
}

.l-contact--grd .l-contact__body {
    border: none;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.l-contact--tech {
    padding-bottom: 60px;
}

.l-contact__body {
    padding: 45px 8.82353%;
    width: 100%;
    border: solid 1px rgba(0, 0, 0, .5);
    text-align: center;
}

.l-contact__ttl {
    margin-bottom: 20px;
    font-weight: 500;
    font-style: normal;
    font-size: 2.25rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
}

.l-contact__ttl span {
    display: block;
    font-weight: 400;
    font-style: normal;
    font-size: 15px;
    font-size: .9375rem;

    line-height: 2;
}

.l-contact__txt {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.33333;
}

.l-contact__txt--plane {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
}

.l-contact__tel {
    display: -ms-flexbox;
    display: flex;
    margin-top: 16px;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.l-contact__tel dl {
    position: relative;
    padding: 16px 8px;
    width: 100%;
    text-align: center;
}

.l-contact__tel dl:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(0, 0, 0, .25);
    content: "";
}

.l-contact__tel dl:last-child:after {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(0, 0, 0, .25);
    content: "";
}

.l-contact__tel dt {
    white-space: nowrap;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 3;
}

.l-contact__tel dd {
    white-space: nowrap;
    font-size: 15px;
    font-size: .75rem;
    line-height: 1.66667;
}

.l-contact__tel dd a {
    color: currentColor;
}

.l-contact__tel dd a:hover,
.l-contact__tel dd a:visited,
.l-contact__tel dd a:focus {
    color: #00498d;
}

.l-contact__btn {
    margin-top: 24px;
    font-weight: 700;
    font-family: "Yu Gothic Medium", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", "Meiryo", sans-serif !important;
}

.l-subcontact {
    padding: 48px 0 110px;
    text-align: center;
}

.l-subcontact__lead {
    padding: 24px;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.l-subcontact__body {
    padding: 20px 5.97015%;
    border: solid 1px rgba(0, 0, 0, .25);
}

.l-subcontact__ttl {
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
    display: block !important;
}

.l-subcontact__txt {
    margin-top: 0 !important;
    font-size: 13px !important;
    font-size: .75rem;
    line-height: 2;
}

.l-content__header {
    position: relative;
}

.l-content__header--tech {
    margin-bottom: 80px;
}

.l-content__ttl {
    position: relative;
    z-index: 80;
    overflow: hidden;
    padding-top: 90px;
    padding-left: 6.4%;
    width: 100%;
    height: 228px;
}

.l-content__ttl--tech {
    padding-right: 6.4%;
    padding-bottom: 34px;
    padding-left: 6.4%;
    height: auto !important;
    text-align: center;
}

.l-content__ttl--tech img.cover {
    object-position: left;
}

.l-content__ttl--tech h2 {
    position: relative;
    margin-bottom: 38px;
    color: #00bacf !important;
    font-weight: 500;
    font-style: normal;
    font-size: 42px;
    font-size: 2.625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.42857;
}

.l-content__ttl--tech h2 span {
    position: absolute;
    top: 21px;
    right: 0;
    left: 0;
    margin: 0 auto auto !important;
    color: #fff !important;
}

.l-content__ttl--tech p {
    margin-bottom: 0 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-size: .9375rem !important;
    line-height: 2 !important;
}

.l-content__ttl p {
    position: relative;
    z-index: 2;
    margin-bottom: 10px;
    color: #00bacf;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
}

.l-content__ttl h2 {
    position: relative;
    z-index: 2;
    color: #fff;
}

.l-content__ttl h2:first-child {
    margin-top: 34px;
}

.l-content__img {
    top: auto !important;
    bottom: 0 !important;
}

.l-content__accent {
    position: relative;
    z-index: 59;
    margin-left: 50%;
    width: 50%;
    height: 45px;
    background-image: linear-gradient(90deg, #00bacf 10%, #00498d 60%, #00bacf);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.l-content__topicks {
    position: relative;
    z-index: 7;
    margin-left: 6.4%;
    width: 93.6%;
    background-image: linear-gradient(90deg, #00bacf 10%, #00498d 60%, #00bacf);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.l-content__lead {
    position: relative;
    padding: 60px 6.4%;
    width: 100%;
}

.l-content__lead h3 {
    font-weight: 700;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.6;
}

.l-content__lead h3 + p {
    margin-top: 16px;
}

.l-content__lead p,
.l-content__lead li {
    font-size: 13px;
    font-size: .75rem;
    line-height: 2;
}

.l-content__lead .cs-content {
    margin-top: 30px;
    width: 68.65672%;
}

.l-content__lead .cs-content a {
    margin-bottom: 5px;
    text-align: left;
    padding-left: 5%;
}

.l-content__lead img {
    display: block;
    max-width: 68.65672%;
    width: 100%;
}

.l-content__lead--form {
    padding-bottom: 0 !important;
}

.l-content__body--txt {
    margin-bottom: 58px;
}

.l-content__body--404 .c-btn-back {
    color: #000;
    text-decoration: none;
}

.l-content__link {
    position: relative;
    width: 100%;
    text-align: center;
}

.l-content__link a {
    display: block;
    padding: 50px 0 48px;
    width: 100%;
    height: 100%;
    color: #fff;
}

.l-content__link h3 {
    position: relative;
    z-index: 1;
    margin-bottom: 20px;
    font-weight: 500;
    font-style: normal;
    font-size: 36px;
    font-size: 2.25rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
}

.l-content__link h3 span {
    display: block;
    font-weight: 400;
    font-style: normal;
    font-size: 15px;
    font-size: .9375rem;

    line-height: 2;
}

.l-content__link p {
    position: relative;
    z-index: 1;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.33333;
}

.l-content__link p--plane {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
}

.l-content__link .c-btn {
    position: relative;
    z-index: 1;
    margin: 13px auto 0;
    padding: 18px 5%;
    width: 87.2%;
    font-size: 14px;
    font-size: 0.65625rem;
    font-family: "Yu Gothic Medium", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", "Meiryo", sans-serif !important;
    line-height: 1.5;
}

.l-content__link--product {
    margin-top: 20px;
}

.l-content__link--plan {
    margin-top: 60px;
}

.l-content__link--co {
    position: relative;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
}

.l-content__link--co a {
    display: block;
    padding: 24px 6.4%;
    width: 100%;
    height: 100%;
}

.l-content__link--co p {
    position: relative;
    z-index: 1;
    color: #00bacf;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.625;
}

.l-content__link--co h3 {
    position: relative;
    z-index: 1;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;

    line-height: 1.5;
}

.l-content__link--co .c-btn {
    position: relative;
    z-index: 1;
    display: inline-block;
    margin-top: 20px;
    max-width: 267px;
}

.l-content__link--co strong {
    display: block;
    color: #00498d;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 2;
}

.l-content__link--co img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.l-footer {
    position: relative;
    padding: 50px 6.4% 0;
    width: 100%;
    background-color: #000;
}

.l-footer__ttl {
    margin-bottom: 20px;
}

.l-footer__ttl a {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.l-footer__ttl img {
    margin-right: 12px;
    height: 70px;
}

.l-footer__ttl span {
    color: #e7e7e7;
    font-size: 28px;
    font-weight: bold;
    display: inline-block;
    vertical-align: top;
}

.l-footer__info {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.l-footer__sitemap {
    width: 100%;
}

.l-footer__sitemap a {
    display: inline-block;
}

.l-footer__link {
    width: 100%;
}

.l-footer__bnr {
    position: relative;
    display: none;
    background-color: #fff;
}

.l-footer__bnr + .l-footer__bnr {
    margin-top: 4px;
    margin-bottom: 20px;
}

.l-footer__bnr p {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 25px;
    margin: auto;
    height: 40px;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.22222;
}

.l-footer__bnr span {
    display: block;
    color: #fff;
    font-size: 11px;
    font-size: .6875rem;
    line-height: 2;
}

.l-footer__bnr img {
    display: block;
    width: 100%;
    height: auto;
}

.l-footer__bnr .c-mask-alpbk {
    transition: .3s ease;
}

.l-footer__bnr__en p {
    height: 22px;
}

.l-footer__contact {
    text-align: center;
}

.l-footer__contact p {
    color: #fff;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;
}

.l-footer__btn {
    margin: 18px 0 10px;
}

.l-footer__misc {
    padding: 28px 0;
    text-align: center;
}

.l-footer__misc ul {
    font-size: 0;
}

.l-footer__misc ul li {
    display: inline-block;
}

.l-footer__misc ul li + li {
    margin-left: 25px;
}

.l-footer__misc ul a {
    color: #fff;
    font-size: 12px;
    font-size: .75rem;
    line-height: 2.16667;
    transition: .3s ease;
}

.l-footer__copyright {
    margin-top: 10px;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;
    line-height: 2.16667;
}

.l-footer__copyright a {
    color: #fff;
}

.l-sitemap {
    display: none;
    margin-bottom: 25px;
}

.l-sitemap__item {
    position: relative;
    width: 50%;
}

.l-sitemap__item p,
.l-sitemap__item li,
.l-sitemap__item a {
    color: #fff;
}

.l-sitemap__item p {
    margin-bottom: 12px;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 1.625;
}

.l-sitemap__item li {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;
}

.l-sitemap__technology {
    margin-bottom: 50px;
}

.l-sitemap__company {
    margin-bottom: 70px;
}

.l-sitemap__works {
    margin-bottom: 30px;
}

.l-sitemap__recruit {
    margin-bottom: 30px;
}

.l-sitemap__news {
    margin-bottom: 50px;
}

.l-header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 90;
    width: 100%;
}

.l-header__ttl {
    position: relative;
    display: inline-block;
    margin: 20px 6.4% 16px;
    width: 39.6875%;
}

.l-header__ttl a {
    white-space: nowrap;
    display: block;
}

.l-header__ttl a span {
    font-size: 36px;
    color: #e7e7e7;
}

.l-header__ttl img {
    height: 70px;
}

@media only screen and (max-width: 992px) {

    .p-video__lst li {
        width: 100% !important;
        margin-bottom: 20px;
    }

    .p-news__nav ul {
        text-align: center;
    }

    .p-news__nav li {
        display: inline-block;
        margin: 0 10px;
        font-size: 16px;
    }

    #news-nav-trg {
        display: none;
    }

    .l-header__ttl a span {
        font-size: 28px;
        vertical-align: top;
        display: inline-block;
        margin-top: -5px;
    }

    .l-header__ttl {
        width: auto;
        margin: 3%;
    }

    .l-header__ttl img {
        height: 50px;
        width: auto;
    }

    .l-content__lead .cs-content {
        width: 100%;
    }
}

.l-loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100vh;
    background-color: #000;
    -ms-transform-origin: right center;
    transform-origin: right center;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-loading__logo {
    display: inline-block;
    max-width: 70%;
}

.l-loading__logo svg {
    width: 100%;
}

.l-loading__mask {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.l-menu {
    position: relative;
    margin-left: -40%;
    width: 140%;
}

.l-menu__box {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 89;
    display: none;
    width: 100%;
    border-top: solid 1px #000;
    background-image: linear-gradient(0, #00498d, #00bacf);
    background-image: linear-gradient(to top, #00498d, #00bacf);
    background-image: -moz-linear-gradient(bottom, #00498d, #00bacf 100%);
}

.l-menu__box.is-active {
    z-index: 90;
}

.l-menu__inner {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.l-menu__header {
    padding: 64px 3.42857% 0 7.14286%;
    width: 28.57143%;
}

.l-menu__body {
    display: -ms-flexbox;
    display: flex;
    padding: 64px 0 120px;
    width: 64.28571%;
    border-right: solid 1px #000;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.l-menu__body--block {
    display: block;
    overflow: hidden;
}

.l-menu__name {
    position: absolute;
    top: 45px;
    right: 6.4%;
    color: #000;
    white-space: nowrap;
    letter-spacing: .08em;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    font-size: 0.65625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0;

    -webkit-writing-mode: vertical-rl;

    -ms-writing-mode: tb-rl;

    writing-mode: vertical-rl;
}

.l-menu__name--product {
    height: 108px;
}

.l-menu__name--tech {
    height: 76px;
}

.l-menu__name--about {
    height: 39px;
}

.l-menu__name--recruit {
    height: 49px;
}

.l-menu__item {
    position: relative;
}

.l-menu__item--product {
    width: 25%;
}

.l-menu__item--product:first-child,
.l-menu__item--product:nth-child(2),
.l-menu__item--product:nth-child(3) {
    margin-bottom: 40px;
}

.l-menu__item--tech {
    float: left;
}

.l-menu__item--tech:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.l-menu__item--recruit {
    padding-left: 5.33333%;
    width: 33.33333%;
}

.l-menu__item--thumb {
    position: relative;
    margin-right: 5.33333%;
    width: 28%;
    height: 0;
    padding-top:15.75%;
}

.l-menu__item .c-olst__txtarea {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    padding: 16px 30px 16px 16px;
    width: 100%;
    height: 100%;
}

.l-menu__item .c-olst__num {
    color: #fff;
    font-size: 24px;
    font-size: 1.6rem;
    line-height: 2;
    color: #00bacf;
}

.l-menu--en .l-menu__item .c-olst__num {
    display: inline-block;
}

.l-menu__item .c-olst__type {
    margin: 0;
    padding: 0;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.69231;
}

.l-menu__item .c-olst__type:after {
    content: none;
}

.l-menu--en .l-menu__item .c-olst__type {
    display: inline-block;
    font-weight: 300;
    font-style: normal;
    font-size: 32px;
    font-size: 2rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
}

.l-menu__item .c-olst__ttl {
    color: #fff;
    font-size: 13px;
    font-size: .75rem;
    line-height: 1.69231;

}

.l-menu__item .c-mask-alpbk {
    transition: .3s ease;
}

.l-menu__item span {
    display: inline-block;
}

.l-menu__item .c-pllst li {
    line-height: 1.25;
}

.l-menu__item .c-pllst li + li {
    margin-top: 7px;
}

.l-menu__btn {
    margin-top: 42px;
    width: 100% !important;
}

.l-overlay {
    z-index: 88;
    display: none;
}

#close-trg {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 28.57143%;
    height: 120px;
}

.l-gnav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 90;
    width: 71.42857%;
}

.l-gnav__lst {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    background-color: #000;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.l-gnav__item a {
    position: relative;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100px;
    color: #fff;
    text-align: center;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-gnav__item a:after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(0, #00bacf, #00498d);
    background-image: linear-gradient(to top, #00bacf, #00498d);
    background-image: -moz-linear-gradient(bottom, #00bacf, #00498d 100%);
    background-position: top center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: "";
    opacity: 0;
    transition: .5s ease;
}

.l-gnav__item--product span {
    display: inline-block;
}

.l-gnav__item--lang a {
    height: 100px;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.l-gnav__item--lang a:after {
    content: none;
}

.l-gnav__item--lang span {
    transition: .3s ease;
}

.l-gnav__item--lang span:not([class]) {
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.l-gnav__item--contact {
    width: 10%;
}

.l-gnav__item--contact a {
    background-image: linear-gradient(45deg, #00498d, #00bacf);
    background-image: linear-gradient(to top right, #00498d, #00bacf);
    background-image: -moz-linear-gradient(bottom left, #00498d, #00bacf 100%);
    background-position: top center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.l-gnav__item--contact span {
    vertical-align: -6px;
    transition: .3s ease;
}

.l-gnav__item p {
    transition: .3s ease;
}

.l-gnav__item p:nth-child(2) {
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;

    line-height: 2;
    opacity: .4;
}

.l-gnav__item.is-active a:after {
    opacity: 1;
}

.l-gnav-sp {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 90;
    overflow: scroll;
    max-height: 100vh;
    width: 100%;
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    background-color: #000;
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

.l-gnav-sp__ttl {
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    width: 252px;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.l-gnav-sp__ttl img {
    height: 48px;
}

.l-gnav-sp__body {
    width: 100%;
}

.l-gnav-sp__trigger {
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.l-gnav-sp__trigger.is-open {
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.l-gnav-sp__trigger.is-open:after {
    -ms-transform: rotate(0);
    transform: rotate(0);
}

.l-gnav-sp__trigger:before,
.l-gnav-sp__trigger:after {
    position: absolute;
    top: 0;
    right: 6.4%;
    bottom: 0;
    display: block;
    margin: auto;
    width: 15px;
    height: 1px;
    background-color: #fff;
    content: "";
}

.l-gnav-sp__trigger:after {
    transition: .3s ease;
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -ms-transform-origin: center;
    transform-origin: center;
}

.l-gnav-sp__first > a:not([class]) {
    display: none;
    text-indent: 1em;
}

.l-gnav-sp__first a[href]:before {
    position: absolute;
    top: 0;
    right: 6.4%;
    bottom: 0;
    display: block;
    margin: auto;
    width: 15px;
    height: 1px;
    background-color: #fff;
    content: "";
}

.l-gnav-sp__first a[href]:after {
    position: absolute;
    top: 50%;
    right: 6.4%;
    display: block;
    width: 7px;
    height: 1px;
    background-color: #fff;
    content: "";
    transition: .3s ease;
    -ms-transform: rotate(30deg);
    transform: rotate(30deg);
    -ms-transform-origin: top right;
    transform-origin: top right;
}

.l-gnav-sp__product .l-gnav-sp__second > a:not([class]) {
    display: none;
}

.l-gnav-sp__product .l-gnav-sp__third {
    display: none;
}

.l-gnav-sp__tech .l-gnav-sp__third {
    display: none;
}

.l-gnav-sp__works > a {
    display: block;
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.l-gnav-sp__news > a {
    display: block;
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.l-gnav-sp__second {
    display: none;
}

.l-gnav-sp__second > a {
    text-indent: 1em;
}

.l-gnav-sp__third > a:not([class]) {
    padding-right: calc(12.4% + 2em);
    padding-left: calc(12.4% + 2em);
}

.l-gnav-sp__lang {
    margin-top: 24px;
}

.l-gnav-sp__lang ul {
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    width: 87.2%;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.l-gnav-sp__lang li {
    width: 50%;
    border: solid 1px rgba(255, 255, 255, .5);
    text-align: center;
}

.l-gnav-sp__lang li a {
    border: none;
    font-weight: 300;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.l-gnav-sp__lang li.is-active {
    border-color: #fff;
}

.l-gnav-sp__lang li.is-active a {
    background-color: #fff;
    color: #000;
}

.l-gnav-sp > .c-btn {
    margin-top: 24px;
    margin-bottom: 40px;
    border: none;
}

.l-gnav-sp a {
    position: relative;
    display: block;
    padding: 15px 6.4%;
    width: 100%;
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    background-color: #000;
    color: #fff;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 1.5;
}

.l-gnav-sp span {
    font-size: 28px;
    vertical-align: top;
    color: #e7e7e7;
    display: inline-block;
    font-weight: bold;
}

.l-toggle {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 91;
    width: 60px;
    height: 60px;
    background-image: linear-gradient(45deg, #00498d, #00bacf);
    background-image: linear-gradient(to top right, #00498d, #00bacf);
    background-image: -moz-linear-gradient(bottom left, #00498d, #00bacf);
    background-position: top center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    cursor: pointer;
}

.l-toggle > span {
    position: absolute;
    top: 29px;
    right: 0;
    left: 0;
    display: block;
    width: 25px;
    height: 1px;
    background-color: #fff;
}

.l-toggle__top {
    margin: -8px auto auto;
}

.l-toggle__middle {
    margin: auto;
}

.l-toggle__bottom {
    margin: 8px auto auto;
}

.l-page {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.l-page:after {
    position: absolute;
    top: 0;
    left: 28.2%;
    z-index: -5;
    display: block;
    width: 65.4%;
    height: 100%;
    background-color: #f9f9f9;
    content: "";
}

.l-page--style {
    position: relative;
    width: 100%;
}

.l-page__line {
    position: absolute;
    top: 0;
    z-index: 60;
    display: none;
    width: 1px;
    height: 100%;
    background-color: rgba(0, 0, 0, .03);
}

.l-page__line--item1 {
    left: 6.4%;
}

.l-page__line--item2 {
    left: 28.13333%;
}

.l-page__line--item3 {
    left: 49.86667%;
}

.l-page__line--item4 {
    left: 71.6%;
}

.l-page__line--item5 {
    left: 93.33333%;
}

.l-anchor {
    position: fixed;
    top: calc(50vh - 82px);
    right: 2.57143%;
    z-index: 60;
    display: none;
}

.l-anchor__body {
    position: relative;
    width: 28px;
    height: 200px;
    text-align: right;
}

.l-anchor__body:before {
    position: absolute;
    top: 98px;
    right: 14px;
    display: block;
    width: 1px;
    height: 36px;
    background-color: #000;
    content: "";
    transition: .3s cubic-bezier(.95, .05, .795, .035);
    -ms-transform: scale(1, 0);
    transform: scale(1, 0);
}

.l-anchor p {
    display: inline-block;
    overflow: hidden;
    margin-right: 2.42857%;

    -webkit-writing-mode: vertical-rl;

    -ms-writing-mode: tb-rl;

    writing-mode: vertical-rl;
}

.l-anchor a {
    position: relative;
    display: block;
    padding: 5px;
    color: #000;
    letter-spacing: .1em;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    transition: .3s cubic-bezier(.95, .05, .795, .035);
}

.l-scroll {
    height: 98px;
}

.l-scroll a {
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.l-pagetop {
    position: absolute;
    right: 0;
    bottom: 0;
}

.l-pagetop a {
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.is-pagetop .l-scroll a {
    -ms-transform: translateY(104px);
    transform: translateY(104px);
}

.is-pagetop .l-anchor__body:before {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    animation: scrollup2 2s 1s infinite cubic-bezier(.645, .045, .355, 1);
}

.is-pagetop .l-anchor__body:hover:before {
    animation: scrollup .8s 1 cubic-bezier(.645, .045, .355, 1);
}

.is-scroll .l-pagetop a {
    -ms-transform: translateY(-104px);
    transform: translateY(-104px);
}

.is-scroll .l-anchor__body:before {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    animation: scrolldown2 2s 1s infinite cubic-bezier(.645, .045, .355, 1);
}

.is-scroll .l-anchor__body:hover:before {
    animation: scrolldown .8s 1 cubic-bezier(.645, .045, .355, 1);
}

.is-white a {
    color: #fff !important;
}

.is-white .l-anchor__body:before {
    background-color: #fff;
}

.l-topsection {
    position: relative;
    width: 100%;
}

.l-topsection__header {
    box-sizing: content-box;
    width: 100%;
    height: 87px;
}

.l-topsection__ttl,
.l-topsubsection__ttl {
    position: relative;
    padding-left: 6.4%;
    font-weight: 500;
    font-style: normal;
    font-size: 36px;
    font-size: 2.25rem;
    line-height: 1.16667;
}

.l-topsection__ttl:before,
.l-topsubsection__ttl:before {
    -ms-transform-origin: right center;
    transform-origin: right center;
}

.l-topsection__ttl span,
.l-topsubsection__ttl span {
    display: block;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;

    line-height: 1.5;
}

.l-topsection__body {
    position: relative;
}

.l-topsection__more {
    padding: 19px 0 !important;
    border: none !important;
    background-color: #00498d;
    color: #fff !important;
    text-align: center;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.l-topsection__more:before {
    background-color: #00498d !important;
}

.l-topsection__more--bk {
    background-color: #000;
}

.l-topsubsection {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    width: 100%;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.l-topsubsection__header {
    position: relative;
    padding-top: 32px;
    padding-bottom: 32px;
    width: 93.6%;
    background-color: #000;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.l-topsubsection__ttl {
    padding-left: 8.10811%;
    color: #fff;
}

.l-topsubsection__body {
    position: relative;
    width: 93.6%;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.l-section,
.l-subsection {
    padding: 0;
}

.l-section--txt,
.l-subsection--txt {
    padding: 70px 6.4% 0;
    width: 100%;
}

.l-section--txt h4,
.l-subsection--txt h4 {
    margin-bottom: 18px;
}

.l-section--txt p,
.l-subsection--txt p {
    font-weight: normal;
}

.p-contact p, .l-section--txt form p {
    display: block !important;
}

.l-section--txt p + p,
.l-subsection--txt p + p,
.l-section--txt p + ul,
.l-subsection--txt p + ul,
.l-section--txt p + ol,
.l-subsection--txt p + ol {
    margin-top: 28px;
}

.l-section--txt ul + p,
.l-subsection--txt ul + p,
.l-section--txt ul + ul,
.l-subsection--txt ul + ul,
.l-section--txt ul + ol,
.l-subsection--txt ul + ol,
.l-section--txt ol + p,
.l-subsection--txt ol + p,
.l-section--txt ol + ul,
.l-subsection--txt ol + ul,
.l-section--txt ol + ol,
.l-subsection--txt ol + ol {
    margin-top: 28px;
}

.l-section--txt li,
.l-subsection--txt li {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.l-section--txt li ol,
.l-subsection--txt li ol,
.l-section--txt li ul,
.l-subsection--txt li ul {
    margin-left: 1em;
}

.l-section--txt a,
.l-subsection--txt a {
    color: #00498d;
    text-decoration: underline;
}

.l-section--full {
    padding: 0;
}

.l-section__header {
    position: relative;
    padding: 48px 6.4%;
    width: 93.6%;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.l-section__header h3 {
    position: relative;
    display: inline-block;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5;
}

.l-section__body {
    position: relative;
    z-index: 1;
}

.l-section__body--txt {
    padding: 64px 6.4% 0;
    width: 100%;
}

.l-section__body--txt p {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.l-section__body--txt p + p,
.l-section__body--txt p + ul,
.l-section__body--txt p + ol {
    margin-top: 28px;
}

.l-section__body--txt ul + p,
.l-section__body--txt ul + ul,
.l-section__body--txt ul + ol,
.l-section__body--txt ol + p,
.l-section__body--txt ol + ul,
.l-section__body--txt ol + ol {
    margin-top: 28px;
}

.l-section__body--txt li {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.l-section__body--txt li ol,
.l-section__body--txt li ul {
    margin-left: 1em;
}

.l-section__img {
    width: 100%;
}

.l-section + .l-section,
.l-subsection + .l-section,
.l-section + .l-subsection,
.l-subsection + .l-subsection {
    margin-top: 52px;
}

.l-subsection--txt {
    padding: 40px 6.4% 0;
}

.l-topicks {
    position: relative;
    z-index: 70;
    display: -ms-flexbox;
    display: flex;
    padding: 32px 13.96011% 40px 6.83761%;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.l-topicks__header {
    width: 100%;
}

.l-topicks__body {
    width: 100%;
}

.l-topicks__name {
    position: absolute;
    top: 50%;
    right: 3.07692%;
    display: none;
    color: #000;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;

    -webkit-writing-mode: vertical-rl;

    -ms-writing-mode: tb-rl;

    writing-mode: vertical-rl;
}

.l-topicks__name--recruit {
    height: 110px;
    -ms-transform: translateY(-49px);
    transform: translateY(-49px);
}

.c-anim {
    position: relative;
}

[class*="c-anim-L"] {
    -ms-transform-origin: left center;
    transform-origin: left center;
}

[class*="c-anim-R"] {
    -ms-transform-origin: right center;
    transform-origin: right center;
}

.c-btn {
    position: relative;
    display: block;
    padding: 8px 0;
    width: 100%;
    border: solid 1px rgba(0, 0, 0, .5);
    color: #000;
    text-align: center;
    letter-spacing: .2em;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    font-size: 0.65625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.57143;
}

.c-btn--whalp {
    position: relative;
    display: block;
    padding: 8px 0;
    width: 100%;
    border: solid 1px rgba(255, 255, 255, .5);
    color: #fff;
    text-align: center;
    letter-spacing: .2em;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    font-size: 0.65625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.57143;
}

.c-btn--gralp {
    position: relative;
    display: block;
    padding: 8px 0;
    width: 100%;
    border: solid 1px rgba(0, 0, 0, .25);
    color: #000;
    text-align: center;
    letter-spacing: .2em;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    font-size: .75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.57143;
}

.c-btn-line {
    position: absolute;
    top: 0;
    right: 8%;
    bottom: 0;
    display: block;
    margin: auto;
    max-width: 24px;
    width: 8%;
    height: 1px;
    background-color: rgba(255, 255, 255, .75);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.c-btn-line:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    width: 10px;
    height: 1px;
    background-color: rgba(255, 255, 255, .75);
    content: "";
    opacity: 0;
    transition: .3s ease;
    -ms-transform: rotate(0);
    transform: rotate(0);
    -ms-transform-origin: right top;
    transform-origin: right top;
}

.c-btn-part {
    position: absolute;
    top: 0;
    right: 8.08458%;
    bottom: 0;
    display: block;
    margin: auto;
    width: 1px;
    height: 24px;
    background-color: rgba(255, 255, 255, .75);
}

.c-btn-part:before {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 1px;
    height: 10px;
    background-color: rgba(255, 255, 255, .75);
    content: "";
    transition: .3s ease;
    -ms-transform: rotate(0);
    transform: rotate(0);
    -ms-transform-origin: center bottom;
    transform-origin: center bottom;
}

.c-btn-part--bk {
    background-color: black;
}

.c-btn-part--bk:before {
    background-color: black;
}

.c-btn-anchor,
.c-btn-anchor--bk {
    position: relative;
}

.c-btn-anchor:after,
.c-btn-anchor--bk:after {
    position: absolute;
    top: 0;
    right: 25px;
    bottom: 0;
    display: block;
    margin: auto;
    width: 17px;
    height: 6px;
    background-image: url('/theme/default/images/anchor_wh.svg');
    background-position: center;
    background-size: 17px 6px;
    background-repeat: no-repeat;
    content: "";
}

.c-btn-anchor--bk:after {
    background-image: url('/theme/default/images/anchor.svg');
}

.c-btn-plane,
.c-btn-plane--bk {
    position: relative;
    display: block;
    padding: 20px 20%;
    width: 100%;
    border: none;
    background-image: linear-gradient(90deg, #00bacf 10%, #00498d 60%, #00bacf);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
    letter-spacing: .1em;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.625;
}

.c-btn-plane--bk {
    background-color: #000;
    background-image: none;
    color: #fff;
}

.c-btn-plus {
    position: relative;
}

.c-btn-plus:before {
    position: absolute;
    top: 0;
    right: 23px;
    bottom: 0;
    z-index: 1;
    display: block;
    margin: auto;
    width: 20px;
    height: 1px;
    background-color: #fff;
    content: "";
}

.c-btn-plus:after {
    position: absolute;
    top: 0;
    right: 23px;
    bottom: 0;
    display: block;
    margin: auto;
    width: 20px;
    height: 1px;
    background-color: #fff;
    content: "";
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -ms-transform-origin: center;
    transform-origin: center;
}

.c-btn-back {
    position: relative;
    display: inline-block;
    color: #000;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 2;
}

.c-btn-back:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #bbb;
    content: "";
}

.c-flow__item {
    position: relative;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.c-flow__item + .c-flow__item {
    padding-top: 40px;
}

.c-flow__item + .c-flow__item:before {
    position: absolute;
    top: 8px;
    right: 0;
    left: 0;
    display: block;
    margin: auto;
    width: 1px;
    height: 24px;
    background-color: #000;
    content: "";
}

.c-flow__item > div {
    padding: 19px 7.33945%;
}

.c-flow__name {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    border: solid 1px #000;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;

    -ms-flex-pack: center;

    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.c-flow__detail {
    width: 100%;
    border-right: solid 1px #000;
    border-bottom: solid 1px #000;
    border-left: solid 1px #000;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.c-flow__detail strong {
    color: #00498d;
    font-weight: 700;
}

.c-flow__ttl + .c-flow__txt {
    margin-top: 12px;
}

.c-flow__txt {
    font-size: 13px !important;
    font-size: .8125rem !important;
}

.c-form > p {
    position: relative;
    margin-bottom: 16px;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.5;
}

.c-form > p + p {
    margin-top: 16px;
}

.c-form > p > input,
.c-form > p > textarea {
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 1.5;
}

.c-form > p span.is-attention {
    display: block;
    color: #00498d;
}

.c-form label {
    display: block;
    font-weight: 700;
}

.c-form label.radio {
    display: inline-block;
    margin-bottom: 6px;
    font-weight: 400;
}

.c-form .selectbox {
    position: relative;
}

.c-form .selectbox:after {
    position: absolute;
    bottom: 22px;
    left: 66.97248%;
    display: inline-block;
    margin: auto;
    width: 12px;
    height: 4px;
    background: url('/theme/default/images/anchor.svg') no-repeat center;
    background-size: 12px 4px;
    content: "";
}

.c-form .pref select {
    position: relative;
    padding: 9px 16px;
    width: 100%;
    border: solid 1px #bbb;
    border-radius: 0;
}

.c-form .pref:after {
    position: absolute;
    top: 42px;
    right: 20px;
    display: inline-block;
    margin: auto;
    width: 12px;
    height: 4px;
    background: url('/theme/default/images/anchor.svg') no-repeat center;
    background-size: 12px 4px;
    content: "";
}

.c-form .month,
.c-form .day {
    position: relative;
    padding: 9px 16px;
    width: 100%;
    border: solid 1px #bbb;
    border-radius: 0;
}

.c-form textarea,
.c-form input:not(.inline) {
    width: 100%;
}

.c-form input:not([type="submit"]),
.c-form textarea {
    margin-bottom: 4px;
    padding: 8px 16px;
    border: solid 1px #bbb;
}

.c-form input.inline {
    margin-right: .99502%;
}

.c-form input.inline + input.inline,
.c-form input.inline + span {
    margin-left: 2.98507%;
}

.c-form input.inline.year,
.c-form input.inline[id^="bdyear"],
.c-form input.inline[id^="abyear"],
.c-form input.inline[id^="weyear"] {
    width: 32.11009%;
}

.c-form input.inline.month {
    width: 18.34862%;
}

.c-form input.inline.p-postal-code {
    padding-left: 48px;
    width: 100%;
}

.c-form input.inline.tel,
.c-form input.inline#emergency {
    width: 100%;
}

.c-form select.month,
.c-form select.day {
    width: 18.34862%;
}

.c-form .abschool {
    margin-top: 8px;
    margin-right: 0;
    margin-left: 0 !important;
    width: 65.74924%;
}

.c-form select.abschool2 {
    padding-left: 3.73134%;
}

.c-form input[type="radio"] {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
}

.c-form input[type="radio"] + .radio {
    position: relative;
    margin-right: 2.98507%;
    font-weight: 700;
}

.c-form input[type="radio"] + .radio:before {
    display: inline-block;
    margin-right: 8px;
    width: 16px;
    height: 16px;
    border: solid 1px #bbb;
    border-radius: 50%;
    content: "";
    vertical-align: -2px;
}

.c-form input[type="radio"] + .radio:after {
    position: absolute;
    top: 2px;
    left: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: -ms-radial-gradient(center center, circle farthest-side, #00bacf 10%, #00498d);
    background: gradient(center, circle farthest-side, #00bacf, #00498d);
    background: -webkit-radial-gradient(center center, circle farthest-side, #00bacf 10%, #00498d);
    content: "";
    transition: .3s ease;
    -ms-transform: scale(0);
    transform: scale(0);
}

.c-form input[type="radio"]:checked + .radio {
    color: #00498d;
}

.c-form input[type="radio"]:checked + .radio:after {
    -ms-transform: scale(1);
    transform: scale(1);
}

.c-form .postalcode {
    position: relative;
}

.c-form .postalcode:before {
    position: absolute;
    top: 34px;
    left: 12px;
    display: inline-block;
    content: "〒";
}

.c-form .c-btn {
    margin: 24px auto 0;
    width: 100%;
    letter-spacing: 0;
    font-style: normal;

}

.c-form__btn {
    margin: 32px auto 0;
    width: 100%;
}

.c-form__btn form + form {
    margin-top: 24px;
}

.c-form__btn .c-btn {
    letter-spacing: 0;
}

input::-webkit-input-placeholder {
    color: #bbb;
    font-weight: normal;
}

input:-ms-input-placeholder {
    color: #bbb;
    font-weight: normal;
}

input::-moz-placeholder {
    color: #bbb;
    font-weight: normal;
}

.filled {
    color: #00498d;
}

.c-hd-style {
    text-align: center;
}

.c-hd-style__ttl {
    color: #00bacf;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.c-hd-style__name {
    color: #fff;
    white-space: nowrap;
    font-weight: 400;
    font-style: normal;
    font-size: 60px;
    font-size: 3.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.c-hd-style__copy {
    margin-top: 10px;
    color: #fff;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;

    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.c-hdl2 {
    position: relative;
    display: inline-block;
    font-weight: 400;
    font-style: normal;
    font-size: 30px;
    font-size: 1.875rem;
    line-height: 1.1;
}

.c-hdl2:before {
    -ms-transform-origin: right center;
    transform-origin: right center;
}

.c-hdl2 span:not([class]) {
    display: block;
    margin-top: 10px;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;

    line-height: 1.5;
}

.c-hdl2 a {
    color: currentcolor;
}

.c-hdl3,
.c-hdl3--bk,
.p-pro-kind__item .c-olst__name,
.p-co-info__name,
.p-news-detail__body h2,
.p-news-detail__body h3,
.p-news-detail__body h4 {
    position: relative;
    margin-bottom: 16px;
    padding-bottom: 15px;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;

    line-height: 1.5;
}

.c-hdl3:after,
.c-hdl3--bk:after,
.p-pro-kind__item .c-olst__name:after,
.p-co-info__name:after,
.p-news-detail__body h2:after,
.p-news-detail__body h3:after,
.p-news-detail__body h4:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 24px;
    height: 1px;
    background-color: #000;
    content: "";
}

.c-hdl3--bk,
.p-pro-kind__item .c-olst__name {
    color: #000;
}

.c-hdl3--bk:after,
.p-pro-kind__item .c-olst__name:after {
    background-color: #00498d;
}

.c-hdl3 a,
.c-hdl3--bk a,
.p-pro-kind__item .c-olst__name a,
.p-co-info__name a,
.p-news-detail__body h2 a,
.p-news-detail__body h3 a,
.p-news-detail__body h4 a {
    padding-bottom: 4px;
    color: currentcolor;
    transition: .3s ease;
}

.c-hdl4 {
    position: relative;
    margin-bottom: 32px;
    padding-left: 12px;
    color: #000;
    font-weight: 500;
    font-style: normal;
    font-size: 22px;
    font-size: 1.375rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.63636;
}

.c-hdl4:after {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 4px;
    height: 30px;
    background-color: #00498d;
    content: "";
}

.c-hdl4 span {
    margin-left: 8px;
    font-weight: 400;
    font-style: normal;
    font-size: 1.2rem;
}

.c-hdl4 a {
    color: currentcolor;
}

.c-hdl5,
.c-hdl5--bk {
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.5;
}

.c-hdl5 a,
.c-hdl5--bk a {
    color: currentcolor;
}

.c-hdl5--bk {
    color: #000;
}

.c-hdl6,
.c-hdl6--bk {
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.66667;
}

.c-hdl6 a,
.c-hdl6--bk a {
    color: currentcolor;
}

.c-hdl6--bk {
    color: #000;
}

.ico-pdf,
.ico-dxf,
.ico-dwg,
.ico-jww {
    position: absolute;
    top: 0;
    right: 8%;
    bottom: 0;
    display: inline-block;
    margin: auto;
    height: 24px;
    color: currentcolor;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1;
}

.ico-anchor {
    position: absolute;
    top: 0;
    right: 8%;
    bottom: 0;
    display: inline-block;
    margin: auto;
    height: 10px;
    color: currentcolor;
    font-size: 10px;
    font-size: .625rem;
    line-height: 1;
}

.ico-play {
    position: absolute;
    top: 0;
    right: 8%;
    bottom: 0;
    display: inline-block;
    margin: auto;
    height: 20px;
    color: currentcolor;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1;
}

.c-img {
    width: 100%;
}

.c-img img {
    width: 100%;
}

.c-img img + dl {
    margin-top: 18px;
}

.c-img figure {
    text-align: left;
}

.c-img figure figcaption {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.c-img figure figcaption + img {
    margin-top: 14px;
}

.c-img--svg img {
    max-width: 340px;
}

.c-img--over {
    width: 100%;
}

.c-img--over img {
    width: 100%;
}

.c-img--full {
    width: 100%;
}

.c-img--full img {
    width: 100%;
}

.c-img--sm {
    width: 100%;
}

.c-img--sm img {
    width: 100%;
}

.c-img-box {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.c-img-box figure.c-img {
    text-align: left;
}

.c-img-box figure.c-img figcaption {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.c-img-box--col2 {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.c-img-box--col2 .c-img img {
    width: 100%;
}

figure[class^="c-img"] {
    text-align: left;
}

figure[class^="c-img"] figcaption {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

figure[class^="c-img"] figcaption.img {
    padding-top: 10px;
    text-align: right;
}

figure[class^="c-img"] figcaption.img img {
    width: auto !important;
}

figure[class^="c-img"] figcaption + img {
    margin-top: 14px;
}

ul.c-lst,
ol.c-lst {
    padding-left: 16px;
}

ul.c-lst > li,
ol.c-lst > li {
    position: relative;
}

ul.c-lst > li:before,
ol.c-lst > li:before {
    position: absolute;
    top: 12px;
    left: -10px;
    display: inline-block;
    margin: auto;
    width: 4px;
    height: 4px;
    background-color: #000;
    content: "";
}

ol.c-numlst,
ol.c-numlst--lg {
    padding-left: 1.5em;
    counter-reset: num;
}

ol.c-numlst > li:before,
ol.c-numlst--lg > li:before {
    display: inline-block;
    margin-left: -1.5em;
    width: 1.5em;
    content: counter(num) ".";
    counter-increment: num;
}

ol.c-numlst--lg {
    padding-left: 2em;
}

ol.c-numlst--lg > li:before {
    margin-left: -2em;
    width: 2em;
}

ol.c-numlst--lg > li:first-child:before,
ol.c-numlst--lg > li:nth-child(2):before,
ol.c-numlst--lg > li:nth-child(3):before,
ol.c-numlst--lg > li:nth-child(4):before,
ol.c-numlst--lg > li:nth-child(5):before,
ol.c-numlst--lg > li:nth-child(6):before,
ol.c-numlst--lg > li:nth-child(7):before,
ol.c-numlst--lg > li:nth-child(8):before,
ol.c-numlst--lg > li:nth-child(9):before {
    margin-left: -1.5em;
    width: 1.5em;
}

ol.c-cnlst {
    padding-left: 1em;
    counter-reset: cnum;
}

ol.c-cnlst > li:before {
    display: inline-block;
    margin-left: -1em;
    width: 1em;
    height: 1em;
    border: solid 1px currentColor;
    border-radius: 50%;
    content: counter(cnum) ".";
    counter-increment: cnum;
}

.c-astlst {
    padding-left: 15px;
}

.c-astlst > li:before {
    display: inline-block;
    margin-left: -15px;
    width: 15px;
    content: "※";
    font-size: .8em;
}

.c-astlst--sm li {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;
}

.c-olst__body {
    position: relative;
    width: 100%;
}

.c-olst__img {
    position: relative;
    overflow: hidden;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.c-olst__img img {
    width: 100%;
    height: auto;
}

.c-olst__type {
    position: relative;
    margin-bottom: 11px;
    padding-bottom: 10px;
    color: #00bacf;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 2;
}

.c-olst__type:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 24px;
    height: 1px;
    background-color: #00bacf;
    content: "";
}

.c-olst__num {
    position: relative;
    letter-spacing: 0 !important;
    font-weight: 300;
    font-style: normal;
    font-size: 40px;
    font-size: 2rem;
    line-height: 1.16;
}

.c-olst__num + .c-olst__name {
    margin-top: 5px;
}

.c-olst__name {
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;

    line-height: 1.5;
}

.c-olst__name + .c-olst__txt {
    margin-top: 8px;
}

.c-olst__ttl {
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;

    line-height: 1.5;
}

.c-olst__txt {
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 2;
}

.c-olst__txt + .c-olst__txt,
.c-olst__txt + p {
    margin-top: 1em;
}

.c-olst__disc {
    margin-top: 4px;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 1.5;
}

.c-olst__sup {
    margin-top: 10px;
}

.c-olst__sup dt {
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.c-olst__sup dd {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.c-blst {
    position: relative;
    box-sizing: border-box;
    padding: 40px 6.4% 32px;
}

.c-blst__ttl {
    position: relative;
    margin-bottom: 16px;
    padding-right: 34px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    font-size: 20px;
    font-size: 1rem;

    line-height: 1.5;
}

.c-blst__ttl:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 24px;
    height: 1px;
    background-color: #000;
    content: "";
}

.c-blst__txt {
    padding-right: 34px;
    color: #000;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.84615;
}

.c-blst li > a {
    color: #fff;
    font-weight: 500;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 1.5;
}

.c-blst li + li {
    margin-top: 5px;
}

.c-blst__name {
    color: #000;
    font-size: 14px;
    line-height: 1;
    word-spacing: 10px;
}

.c-blst__body {
    position: relative;
}

.c-blst__body > .c-blst__name {
    top: 6px;
    right: 0;
}

.c-ullst {
    overflow: hidden;
}

.c-ullst__item {
    position: relative;
    display: inline-block;
    float: left;
    clear: both;
    margin-bottom: 7px;
}

.c-ullst__item:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-product__item--reverse .p-product__service dd {
    font-style: normal;
    font-size: 0.75rem;
    line-height: 1.5;
    transition: .3s;
}

.c-ullst a {
    padding: 5px 0 10px;
    box-shadow: 0 -1px 0 0 #fff inset;
    color: #fff;
    font-style: normal;
    font-size: 0.75rem;
    line-height: 1.5;
    transition: .3s;
}

.c-thlst {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.c-thlst__item {
    position: relative;
    margin-bottom: 40px;
    padding: 0 6.4%;
    width: 100%;
}

.c-thlst__item--btn {
    padding-bottom: 60px;
}

.c-thlst__item--btn .c-thlst__txtarea {
    padding: 20px 0;
}

.c-thlst__item--btn .c-btn {
    position: absolute;
    bottom: 0;
    left: 6.4%;
    width: 85%;
}

.c-thlst__item > a:not(.c-btn) {
    display: block;
    transition: .3s ease;
}

.c-thlst__img img {
    width: 100%;
    height: 56.25%;
}

.c-thlst__label {
    position: absolute;
    top: -20px;
    left: 0;
    display: inline-block;
    padding: 0 16px;
    min-width: 100px;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2.15385;
}

.c-thlst__txtarea {
    position: relative;
    padding: 20px 0 0;
}

.c-thlst__name {
    color: #000;
    font-weight: 700;
    font-size: 16px;
    font-size: .75rem;
    line-height: 1.5;
}

.c-thlst__category,
.c-thlst__disc {
    font-size: 14px;
    font-size: 0.75rem;
    line-height: 1.5;
}

.c-thlst__tag {
    margin-top: 8px;
    color: #000;
    font-size: 12px;
    font-size: .7rem;
    line-height: 1.5;
}

.c-thlst__tag span {
    position: relative;
    display: inline;
}

.c-thlst__tag span:not(:first-child) {
    margin-left: 6px;
    padding-left: 6px;
}

.c-thlst__tag span:not(:first-child):before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 1px;
    height: 10px;
    background-color: rgba(0, 0, 0, .3);
    content: "";
}

.c-thlst__txt {
    margin-top: 5px;
    color: #000;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 1.5;
}

.c-dllst li {
    border-bottom: solid 1px #bbb;
    vertical-align: top;
    clear: both;
    overflow: hidden;

}

.c-dllst .dt,
.c-dllst .dd {
    font-size: 14px;
    font-size: 0.75rem;
    line-height: 1.5;
}

.c-dllst .dt {
    padding-top: 24px;
    width: 100%;
    font-weight: 700;
}

.c-dllst .dd {
    padding-bottom: 4px;
    width: 100%;
}

.c-dllst a {
    color: #00498d;
    text-decoration: underline;
}

.c-dllst--col3 dl {
    display: block;
    overflow: hidden;
    padding-top: 24px;
}

.c-dllst--col3 dt {
    float: left;
    padding-top: 0;
    padding-right: 6.11621%;
    width: 25%;
}

.c-dllst--col3 dt:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.c-dllst--col3 dd {
    float: right;
    padding: 0 0 4px;
    width: 75%;
}

.c-dllst--col3 dd:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.c-pllst {
    overflow: hidden;
}

.c-pllst li {
    position: relative;
    display: inline-block;
    float: left;
    clear: left;
    color: #fff;
}

.c-pllst li:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.c-pllst li a {
    padding-bottom: 2px;
    color: #fff;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

.c-tgllst__item {
    border-bottom: solid 1px rgba(0, 0, 0, .25);
}

.c-tgllst__item:first-child {
    border-top: solid 1px rgba(0, 0, 0, .25);
}

.c-tgllst__item.is-disabled .c-tgllst__header p:after {
    display: block;
    content: "※現在、経験者採用は行っておりません。";
    font-weight: 400;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.73077;
}

.c-tgllst__item.is-open .c-tgllst__header a {
    background-color: #000;
    color: #fff;
}

.c-tgllst__item.is-open .c-tgllst__header a .c-tgllst__toggle > div:before,
.c-tgllst__item.is-open .c-tgllst__header a .c-tgllst__toggle > div:after {
    background-color: #fff;
}

.c-tgllst__item.is-open .c-tgllst__header a .c-tgllst__toggle > div:after {
    -ms-transform: rotate(0);
    transform: rotate(0);
}

.c-tgllst__header {
    position: relative;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.5;
}

.c-tgllst__header a {
    display: -ms-flexbox;
    display: flex;
    padding: 16px 2.98507%;
    width: 100%;
    height: 100%;
    transition: .3s ease;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
}

.c-tgllst__body {
    display: none;
    padding: 0 7.33945%;
    border-top: solid 1px rgba(0, 0, 0, .25);
}

.c-tgllst__body .c-dllst dl:last-child {
    border-bottom: none;
}

.c-tgllst__toggle {
    position: absolute;
    top: 0;
    right: 2.98507%;
    bottom: 0;
    margin: auto;
    width: 15px;
    height: 15px;
}

.c-tgllst__toggle > div {
    position: relative;
    width: 100%;
    height: 100%;
}

.c-tgllst__toggle > div:before,
.c-tgllst__toggle > div:after {
    position: absolute;
    top: 7px;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000;
    content: "";
    transition: .3s ease;
}

.c-tgllst__toggle > div:after {
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -ms-transform-origin: center;
    transform-origin: center;
}

dl.c-dtlst {
    width: 100%;
    font-size: 0;
}

dl.c-dtlst dt,
dl.c-dtlst dd {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

dl.c-dtlst dt {
    padding-right: 1em;
    width: 25%;
    color: #00498d;
    vertical-align: top;
    font-weight: 700;
}

dl.c-dtlst dd {
    width: 75%;
}

.c-fllst li {
    overflow: hidden;
}

.c-fllst li + li {
    margin-top: 18px;
}

.c-fllst li p {
    display: inline-block;
    width: 100%;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2.66667;
}

.c-fllst li .c-btn {
    width: 100%;
    color: #000;
    text-decoration: none;
}

.c-imglst {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
}

.c-imglst li {
    width: 46.33028%;
}

.c-imglst figure img {
    width: 100%;
}

.c-imglst figure figcaption {
    padding: 9px 0 20px;
    text-align: right;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;
}

.c-imglst--col3 li {
    width: 100%;
}

.c-mask,
.c-mask-r,
.c-mask-bk,
.c-mask-alpbk,
.c-mask-wh,
.c-mask-lgr {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 80;
    display: block;
    width: 100%;
    height: 100%;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: center right;
    transform-origin: center right;
}

.c-mask-r {
    background-color: #00498d;
}

.c-mask-bk {
    background-color: #000;
}

.c-mask-alpbk {
    z-index: 0;
    background-color: rgba(0, 0, 0, .6);
}

.c-mask-wh {
    background-color: #fff;
}

.c-mask-lgr {
    background-color: #f9f9f9;
}

.c-mask-box {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 45;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.c-mask-box > div {
    position: static;
    width: 25%;
}

.c-txt-mask:before {
    -ms-transform: scale(1, 1) !important;
    transform: scale(1, 1) !important;
}

.c-mask-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .8);
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2));
    background-position: left top;
    background-size: 4px 4px;
    background-repeat: repeat;
}

.c-mask-stripe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2));
    background-position: left top;
    background-size: 4px 4px;
    background-repeat: repeat;
}

.c-table__head {
    font-weight: 700;
}

.c-table__col {
    padding-right: 2em;
}

.c-table__tr {
    display: -ms-flexbox;
    display: flex;
    padding: 24px 0 4px;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.c-table__th {
    border-bottom: solid 1px #bbb;
    font-weight: 700;
}

.c-table__td {
    border-bottom: solid 1px #bbb;
}

.c-table--col3 .c-table__col {
    width: 37.31343%;
}

.c-table--col3 .c-table__th {
    width: 31.34328%;
}

.c-table-wrap--fix .c-table--col3 .c-table__th {
    width: 200px;
}

.c-table--col3 .c-table__td:last-child {
    width: 31.34328%;
}

.c-table--col4 .c-table__col {
    width: 25%;
}

.c-table--fix .c-table__col {
    width: 200px;

    -ms-flex: 1 0 200px;

    flex: 1 0 200px;
}

.c-table--fix.c-table--col3 .c-table__col {
    width: 200px;

    -ms-flex: 0 1 auto;

    flex: 0 1 auto;
}

.c-table-wrap {
    position: relative;
    overflow-x: scroll;
    padding-bottom: 25px;
    width: 100%;

    scrollbar-base-color: #959595;
}

.c-table-wrap::-moz-scrollbar {
    width: 3px;
    height: 10px;
}

.c-table-wrap::-webkit-scrollbar {
    width: 3px;
    height: 10px;
}

.c-table-wrap::-webkit-scrollbar-track {
    background: #000;
    box-shadow: inset 0 0 2px white;
}

.c-table-wrap::-webkit-scrollbar-thumb {
    background: #959595;
}

.c-table-wrap > .c-table {
    min-width: 768px;
}

.c-table-wrap--fix {
    overflow-x: scroll;
}

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
    margin: 3px 0;
    height: 10px;
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    border-radius: 0;
}

.mCSB_scrollTools .mCSB_draggerRail {
    background-color: #000;
}

._mCS_1 .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
    background-color: #959595;
}

.c-tbl-slider {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    padding-top: 38px;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.c-tbl-slider--fit {
    padding-top: 0;
}

.c-tbl-slider__head {
    width: 50%;
}

.c-tbl-slider__head .c-tbl-slider__col {
    font-weight: 700;
}

.c-tbl-slider__body {
    overflow: hidden;
    width: 50%;
}

.c-tbl-slider__body .bx-viewport {
    overflow: visible !important;
}

.c-tbl-slider__col {
    padding-top: 24px;
    padding-right: 16%;
    padding-bottom: 4px;
    border-bottom: solid 1px #bbb;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 1.5;
}

.c-tbl-slider__col span {
    white-space: nowrap;
}

.c-tbl-slider__col--head {
    font-weight: 700;
}

.c-tbl-slider__head .c-tbl-slider__col--line p {
    padding-bottom: 30px;
}

.c-tbl-slider__body .c-tbl-slider__col--line {
    padding-top: 54px;
}

.c-tbl-slider__col--l2 p {
    padding-bottom: 60px;
}

.c-tbl-slider__col--l3 p {
    padding-bottom: 90px;
}

.c-tbl-slider__col--l4 p {
    padding-bottom: 120px;
}

.c-tbl-slider__col--l5 p {
    padding-bottom: 150px;
}

.c-tbl-slider__col--l6 p {
    padding-bottom: 180px;
}

.c-tbl-slider__controls {
    position: absolute;
    top: 12px;
    right: 0;
    left: 0;
    padding: 0 38px;
    text-align: center;
}

.c-tbl-slider__pager {
    display: inline-block;
}

.c-tbl-slider__prev {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 20px;
    height: 30px;
}

.c-tbl-slider__prev a {
    display: block;
    padding: 11px 0;
    width: 100%;
    height: 100%;
}

.c-tbl-slider__prev:before {
    position: absolute;
    bottom: 11px;
    left: 0;
    display: block;
    width: 20px;
    height: 1px;
    background-color: #000;
    content: "";
}

.c-tbl-slider__prev:after {
    position: absolute;
    bottom: 11px;
    left: 0;
    display: block;
    width: 10px;
    height: 1px;
    background-color: #000;
    content: "";
    -ms-transform: rotate(-30deg);
    transform: rotate(-30deg);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.c-tbl-slider__next {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 20px;
    height: 30px;
}

.c-tbl-slider__next a {
    display: block;
    padding: 11px 0;
    width: 100%;
    height: 100%;
}

.c-tbl-slider__next:before {
    position: absolute;
    right: 0;
    bottom: 11px;
    display: block;
    width: 20px;
    height: 1px;
    background-color: #000;
    content: "";
}

.c-tbl-slider__next:after {
    position: absolute;
    right: 0;
    bottom: 11px;
    display: block;
    width: 10px;
    height: 1px;
    background-color: #000;
    content: "";
    -ms-transform: rotate(30deg);
    transform: rotate(30deg);
    -ms-transform-origin: right center;
    transform-origin: right center;
}

.c-tbl-slider .bx-pager {
    font-size: 0;
}

.c-tbl-slider .bx-pager-item {
    display: inline-block;
}

.c-tbl-slider .bx-pager-item a {
    display: block;
    padding: 0 10px;
    color: #000;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
    font-size: 1.0625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
}

.c-tbl-slider .bx-pager-item a.active {
    color: #00498d;
}

.p-mv {
    position: relative;
    box-sizing: content-box;
    padding-bottom: 52px;
    width: 100%;
}

.p-mv__main {
    position: relative;
    z-index: 10;
    overflow: hidden;
    width: 100%;
    height: 460px;
    text-align: center;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
    background: #000;
    -webkit-background-size: cover;
    background-size: cover;
}

.p-mv__main video,
.p-mv__main img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    height: 100%;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.p-mv__txtarea {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 12;
    margin: auto;
    padding: 0 6.4%;
    width: 100%;
    height: 135px;
    text-align: left;
}

.p-mv__type {
    color: #00498d;
    font-weight: 300;
    font-style: normal;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-mv__ttl {
    color: #00bacf;
    font-size: 3.25rem;
    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-mv__txt {
    color: #fff;
    font-style: normal;
    font-size: 12px;
    font-size: .7rem;

    line-height: 1.5;
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-mv__btn {
    margin-top: 24px;
    width: 204px;
}

.p-mv__sound {
    position: absolute;
    right: 3.69231%;
    bottom: 30px;
    z-index: 12;
}

.p-mv__sound a {
    position: relative;
    display: block;
    padding: 10px;
    color: rgba(255, 255, 255, .5);
    white-space: nowrap;
    font-weight: 300;
    font-style: normal;
    font-size: 12px;
    font-size: .5625rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
    transition: .3s ease;
}

.p-mv__sound a.is-active {
    color: #fff;
}

.p-mv__sound a.is-active:after {
    background-color: #fff;
    animation: sound 1.7s infinite cubic-bezier(.645, .045, .355, 1);
}

.p-mv__sound a:after {
    position: absolute;
    bottom: 0;
    left: 10px;
    display: block;
    width: calc(100% - 20px);
    height: 1px;
    background-color: rgba(255, 255, 255, .5);
    content: "";
    transition: .3s ease;
}

.p-mv__accent {
    position: relative;
    top: 0;
    right: -12.8%;
    padding-top: 24px;
    width: 87.2%;
    height: 65px;
    background-image: linear-gradient(90deg, #00bacf 10%, #00498d 60%, #00bacf);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.p-mv__vbtn {
    margin-left: 6.83761%;
    padding: 8px 0;
    width: 86.32479%;
}

#top-content {
    position: relative;
    padding-bottom: 90px;
}

#top-content:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 4px;
    background-image: linear-gradient(90deg, #00498d, #00bacf);
    background-image: linear-gradient(to right, #00498d, #00bacf);
    background-image: -moz-linear-gradient(left, #00498d, #00bacf);
    content: "";
}

.p-topproduct {
    overflow: hidden;
    -ms-transform-origin: center left;
    transform-origin: center left;
}

.p-topproduct .c-mask-alpbk {
    z-index: 0;
    width: 108.33333%;
}

.p-topproduct__bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 93.6%;
}

.p-topproduct__bg video {
    width: 100%;
}

.p-topproduct__bg img {
    width: 100%;
    height: auto;
}

.p-topproduct__contents {
    display: -ms-flexbox;
    display: flex;
    padding-top: 40px;
    width: 100%;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: end;
    align-items: flex-end;
}

.p-topproduct__lst {
    position: relative;
    z-index: 10;
    display: -ms-flexbox;
    display: flex;
    width: 87.2%;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
    -ms-transform-origin: left center;
    transform-origin: left center;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.p-topproduct__item {
    padding-right: 9.78593%;
    padding-bottom: 85px;
    padding-left: 9.78593%;
    width: 100%;
}

.p-topproduct__item--plant {
    padding-bottom: 135px;
}

.p-topproduct__item ul {
    overflow: hidden;
}

.p-topproduct__item li {
    position: relative;
    display: inline-block;
    float: left;
    clear: left;
    padding-right: 34px;
    line-height: 1.25;
    color: #fff;
    font-size: .8125rem;
}

.p-topproduct__item li:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-topproduct__item li a {
    padding-bottom: 2px;
}

.p-topproduct__item .c-blst__name {
    right: 9.78593%;
    position: absolute;
    top: 48px;
    color: #000;
    letter-spacing: .08em;
    font-weight: 400;
    font-style: normal;
    font-size: 1rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
    -ms-transform: rotate(90deg) translateX(100%);
    transform: rotate(90deg) translateX(100%);
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0;
}

.p-topproduct__btn {
    position: absolute;
    bottom: 0;
    margin: auto;
    width: 80.42813%;
}

.p-topproduct__search {
    display: none;
    float: right;
    margin-top: 29px;
    margin-right: 6.4%;
}

.p-topproduct__search:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-topproduct__search .c-ullst__item {
    float: right;
}

.p-topproduct__search .c-ullst__item:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-topproduct__search .c-ullst__item a {
    box-shadow: 0 -1px 0 0 #000 inset;
    color: #000;
}

.p-topproduct__search .c-ullst__item a:after {
    background-color: #000;
}

.p-topproduct__more {
    margin-top: 40px;
}

#top-technology {
    margin-top: 65px;
}

.p-toptechnology__body {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    padding-top: 35px;
    width: 93.6%;
    background-color: #000;
    -ms-transform-origin: left center;
    transform-origin: left center;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.p-toptechnology__txtarea {
    margin-bottom: 40px;
    padding: 0 6.83761%;
    width: 100%;
}

.p-toptechnology__ttl,
.p-co-style__ttl,
.p-tech-story__ttl {
    position: relative;
    margin-bottom: 20px;
    color: #00bacf;
    font-weight: 300;
    font-style: normal;
    font-size: 40px;
    font-size: 2.5rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.15;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-toptechnology__ttl span,
.p-co-style__ttl span,
.p-tech-story__ttl span {
    display: block;
    color: #fff;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.08333;
}

.p-toptechnology__txt,
.p-co-style__txt,
.p-tech-story__txt {
    position: relative;
    margin-bottom: 29px;
    color: #fff;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 1.84615;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-toptechnology__lst {
    width: 93.16239%;
}

.p-toptechnology__item {
    position: relative;
    width: 100%;
}

.p-toptechnology__item .c-olst__num {
    margin-top: -.5em;
    color: #fff;
    transition: .3s ease;
}

.p-toptechnology__item .c-olst__type:after {
    left: 8.82353%;
}

.p-toptechnology__item .c-mask-stripe {
    background-color: rgba(0, 0, 0, .25);
    transition: .3s ease;
}

.p-toptechnology__item div:before {
    position: absolute;
    bottom: 0;
    left: 0;
}

.p-toptechnology__item div img {
    width: 100%;
    height: auto;
    vertical-align: top;
}

.p-toptechnology__item p {
    padding: 0 7.33945%;
}

.p-toptechnology__item a {
    display: block;
}

.p-toptechnology__item--item1 {
    margin-top: 0;
}

.p-toptechnology__item--item2 {
    margin-top: 30px;
    margin-left: 14.6789%;
}

.p-toptechnology__item--item3 {
    margin-top: 30px;
    margin-left: 7.33945%;
}

.p-toptechnology__more {
    margin-top: 40px;
}

#top-works {
    margin-top: 72px;
}

.p-topworks__body {
    position: relative;
    width: 100%;
}

.p-topworks__bg {
    position: absolute;
    top: 40px;
    left: 6.4%;
    z-index: -1;
    width: 93.6%;
    height: calc(100% - 40px);
    background-color: #000;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-topworks__lst {
    width: 100%;
}

.p-topworks__item {
    position: relative;
    margin-bottom: 40px;
    width: 87.2%;
}

.p-topworks__item .c-olst__num {
    transition: .3s ease;
}

.p-topworks__item .c-olst__txtarea {
    position: relative;
    margin-top: -29px;
}

.p-topworks__item .c-mask-stripe {
    background-color: rgba(0, 0, 0, .25);
    transition: .3s ease;
}

.p-topworks__item--item1 {
    overflow: hidden;
}

.p-topworks__item--item1 .c-olst__img {
    width: 100%;
}

.p-topworks__item--item1 .c-olst__txtarea {
    margin-left: 12.8%;
    text-align: left;
}

.p-topworks__item--item2 {
    margin-left: 6.4%;
}

.p-topworks__item--item2 a {
    display: block;
}

.p-topworks__item--item2 img {
    width: 100%;
    height: auto;
}

.p-topworks__item--item2 .c-olst__txtarea {
    padding-left: 6.4%;
}

.p-topworks__item--item3 {
    margin-left: 12.8%;
}

.p-topworks__item--item3 .c-olst__txtarea {
    margin-left: 6.4%;
}

.p-topworks__item--item3 .c-olst__img {
    display: block;
}

.p-topworks__more {
    margin-left: 6.4%;
    width: 93.6%;
}

#top-about {
    margin-top: 72px;
}

.p-topabout__body {
    display: -ms-flexbox;
    display: flex;
    width: 100%;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.p-topabout__img {
    position: relative;
    padding: 32px 6.4% 60px;
    width: 93.6%;
    background: url('/theme/default/images/about-1.jpg') no-repeat left center;
    background-size: cover;
}

.p-topabout__info {
    position: relative;
    padding-right: 10.56106%;
    padding-left: 10.56106%;
    width: 100%;
    background-color: #fff;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-topabout__info .c-blst__ttl {
    color: #000;
}

.p-topabout__info .c-blst__ttl:after {
    background-color: #00498d;
}

.p-topabout__info .c-blst__txt {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.84615;
}

.p-topabout__info .c-blst__name {
    right: 10.56106%;
    color: #00498d;
}

.p-topabout__maparea {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-transform-origin: left center;
    transform-origin: left center;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.p-topabout__maparea .p-about__mask1 {
    z-index: 81;
}

.p-topabout__mapinfo {
    position: relative;
    position: relative;
    z-index: 1;
    padding-right: 14.93333%;
    padding-left: 14.93333%;
    width: 93.6%;
    background-color: #000;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-topabout__mapinfo .c-blst__ttl:after {
    background-color: #00bacf;
}

.p-topabout__mapinfo .c-blst__txt {
    color: #fff;
    font-size: 13px;
    font-size: .75rem;
    line-height: 1.84615;
}

.p-topabout__mapinfo .c-blst__name {
    color: #00bacf;
}

.p-topabout__map {
    display: inline-block;
    width: 93.6%;
    height: 200px;
    background-image: url('/theme/default/images/top_map_sp.jpg');
    background-position: top left;
    background-size: cover;
    background-repeat: no-repeat;
}

.p-topabout__map--en {
    background-image: url('/theme/default/images/top_map_sp.jpg');
}

.p-topabout__btn {
    margin-top: 70px;
}

.p-topabout__more {
    width: 93.6%;
}

.p-topabout__mask2 {
    z-index: 79;
}

#top-news {
    padding-top: 80px;
    background-color: #fff;
}

.p-topnews {
    background-color: #f9f9f9;
}

.p-topnews__body {
    padding: 32px 0 40px;
}

.p-topnews__lst {
    position: relative;
    padding: 0 6.83761%;
    width: 100%;
}

.p-topnews__item {
    border-top: solid 1px #bbb;
}

.p-topnews__item:last-child {
    border-bottom: solid 1px #bbb;
}

.p-topnews__item a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    padding: 12px 3.66972%;
    transition: .3s ease;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.p-topnews__date {
    width: 100%;
    color: #000;
    font-weight: 400;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    transition: .3s ease;
}

.p-topnews__ttl {
    width: 100%;
    color: #000;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;

    line-height: 1.5;
    transition: .3s ease;
}

.p-topnews__more {
    width: 100%;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-co-img,
.p-about-img,
.p-glo-img {
    position: relative;
    margin: 0 -7.33945% 50px;
    width: 114.6789%;
}

.p-co-img img,
.p-about-img img,
.p-glo-img img {
    width: 100%;
}

.p-co-img figcaption,
.p-about-img figcaption,
.p-glo-img figcaption {
    position: absolute;
    right: 11px;
    bottom: 10px;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.61538;
}

.p-co-style {
    position: relative;
    margin-top: 60px;
    width: 93.6%;
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2));
    background-position: left top;
    background-size: 4px 4px;
    background-repeat: repeat;
}

.p-co-style__txtarea {
    padding: 60px 7.33945% 40px;
    width: 100%;
    background-color: #000;
}

.p-co-style__txt {
    font-size: 15px !important;
}

.p-co-style__img {
    position: relative;
    width: 100%;
    height: 234px;
    overflow: hidden;
}
.about-video {
    display: block;
   position: relative;
   height: 100%;
    z-index: 10;
}


.about-video video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: fill;

}



.about-video span {
    width: 60px;
    height: 60px;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    position: absolute;
    font-size: 24px;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s;
    z-index: 5;
}
.about-video img{
    width: 100%;
}

.about-video:hover span {
    color: var(--web-color);
    background-color: #fff;
    webkit-animation-name: hvr-pulse;
    animation-name: hvr-pulse;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@-webkit-keyframes hvr-pulse {
    25% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    75% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9)
    }
}

@keyframes hvr-pulse {
    25% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    75% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9)
    }
}
.p-co-style .about-a {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-co-style img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
}

.p-co-lst {
    display: -ms-flexbox;
    display: flex;
    padding: 0 6.4% 60px;
    width: 100%;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-co-lst__item {

    width: 100%;
    margin-bottom: 2%;
}

.p-co-lst__item .c-blst__ttl {
    color: #000;
}

.p-co-lst__item .c-blst__ttl:after {
    background-color: #00498d;
}


.p-customer,
.p-pl-result {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
}

.p-customer__item,
.p-pl-result__item {
    margin-bottom: 8px;
    width: 50%;
}

.p-customer__item p,
.p-pl-result__item p {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.30769;
}

.p-customer__item p + p,
.p-pl-result__item p + p {
    margin-top: 8px;
}

.p-customer__item--item1,
.p-pl-result__item--item1 {
    width: 100%;
}

.p-customer__item--item2,
.p-pl-result__item--item2 {
    width: 100%;
}

.p-customer__item--item3,
.p-pl-result__item--item3 {
    width: 100%;
}

.p-customer__txt,
.p-pl-result__txt {
    margin-top: 20px;
    text-align: right;
    font-size: 13px !important;
    font-size: .8125rem !important;
    line-height: 1.84615 !important;
}

#dhfstyle .l-header {
    position: absolute;
}

.p-ds-content {
    width: 100%;
}

.p-ds-section {
    position: relative;
    width: 100%;
}

.p-ds-section__body {
    position: relative;
    z-index: 1;
    padding: 100px 0;
    width: 100%;
    height: 100%;
}

.p-ds-section__ttlarea {
    width: 100%;
}

.p-ds-section__txtarea {
    padding: 50px 7.5% 0;
    width: 100%;
}

.p-ds-section__txtarea p {
    max-width: 100%;
    color: #fff;
    font-size: 12px;
    font-size: .75rem;
    line-height: 2;
}

.p-ds-section__txtarea p + p {
    margin-top: 1em;
}

.p-ds-section__ttl {
    margin-top: -50px;
}

.p-ds-mv__body {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column wrap;

    flex-flow: column wrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-ds-mv__ttl {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px;
    text-align: center;
    transition: .3s ease;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-ds-mv__ttl h2 {
    color: #00bacf;
    font-weight: 400;
    font-style: normal;
    font-size: 60px;
    font-size: 3.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
}

.p-ds-mv__ttl p {
    margin-top: -50px;
    padding-bottom: 50px;
    height: 27px;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    font-weight: 700;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 1.5;
}

.p-ds-mv__txt {
    padding: 0 7.5%;
    color: #fff;
    font-size: 12px;
    font-size: .75rem;
    line-height: 2;
}

.p-ds-mv {
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2)), url('/theme/default/images/about_bg01.jpg');
    background-position: left top, center;
    background-size: 4px 4px, auto 100%;
    background-repeat: repeat, no-repeat;
}

.p-ds-org {
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2)), url('/theme/default/images/about_bg02.jpg');
    background-position: left top, center;
    background-size: 4px 4px, auto 100%;
    background-repeat: repeat, no-repeat;
}

.p-ds-tech {
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2)), url('/theme/default/images/about_bg03.jpg');
    background-position: left top, center;
    background-size: 4px 4px, auto 100%;
    background-repeat: repeat, no-repeat;
}

.p-ds-chlg {
    background-image: linear-gradient(-45deg, transparent 25%, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .2) 50%, transparent 50%, transparent 75%, rgba(0, 0, 0, .2) 75%, rgba(0, 0, 0, .2)), url('/theme/default/images/about_bg04.jpg');
    background-position: left top, center;
    background-size: 4px 4px, auto 100%;
    background-repeat: repeat, no-repeat;
}

.p-ds-anchor {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 90;
    display: none;
    margin: auto;
    width: 28px;
    opacity: 0;
}

.p-ds-anchor__body {
    position: relative;
    height: 134px;
    text-align: right;
}

.p-ds-anchor__body:before {
    position: absolute;
    top: 98px;
    right: 15px;
    display: block;
    width: 1px;
    height: 36px;
    background-color: #fff;
    content: "";
    animation: scrolldown 2s 1.5s infinite cubic-bezier(.645, .045, .355, 1);
}

.p-ds-anchor p {
    display: inline-block;
    overflow: hidden;
    margin-right: 2.42857%;

    -webkit-writing-mode: vertical-rl;

    -ms-writing-mode: tb-rl;

    writing-mode: vertical-rl;
}

.p-ds-anchor a {
    position: relative;
    display: block;
    padding: 5px;
    color: #000;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    transition: .3s cubic-bezier(.95, .05, .795, .035);
}

.p-ds-anchor a {
    position: relative;
    display: block;
    padding: 5px;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    transition: .3s cubic-bezier(.95, .05, .795, .035);
}

.p-ds-anchorbox {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 50;
    display: none;
    display: none;
    width: 7.14286%;
    height: 100%;
    opacity: 0;
}

.p-ds-anchorbox__item {
    position: absolute;
    top: 50%;
    left: -7px;
    margin: auto;
    width: 105px;
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
}

.p-ds-anchorbox__item p:before {
    position: absolute;
    top: 14px;
    left: 0;
    width: 36px;
    height: 1px;
    background-color: #fff;
    content: "";
    transition: .3s cubic-bezier(.95, .05, .795, .035);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: center right;
    transform-origin: center right;
}

.p-ds-anchorbox__item p:after {
    position: absolute;
    top: 14px;
    right: 0;
    display: block;
    width: 36px;
    height: 1px;
    background-color: #fff;
    content: "";
    transition: .3s cubic-bezier(.95, .05, .795, .035);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -ms-transform-origin: center right;
    transform-origin: center right;
}

.p-ds-anchorbox__item a {
    position: relative;
    display: inline-block;
    margin: auto;
    padding: 5px;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    font-size: .75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.5;
    transition: .3s cubic-bezier(.95, .05, .795, .035);
}

.p-ds-anchorbox__item--top {
    margin-top: -120px;
}

.p-ds-anchorbox__item--top p:after {
    content: none;
}

.p-ds-anchorbox__item--org {
    margin-top: -10px;
}

.p-ds-anchorbox__item--org p:after {
    right: -5px;
}

.p-ds-anchorbox__item--tech {
    margin-top: 115px;
}

.p-ds-anchorbox__item--tech p:after {
    right: -11px;
}

.p-ds-anchorbox__item--chlg {
    margin-top: 245px;
}

#dhfstyle.is-top .p-ds-anchorbox__item--top p:before {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-top .p-ds-anchorbox__item--top a {
    color: #00bacf;
    cursor: default;
    -ms-transform: translateX(20px);
    transform: translateX(20px);
}

#dhfstyle.is-top .p-ds-anchorbox__item--org p:before,
#dhfstyle.is-top .p-ds-anchorbox__item--tech p:before,
#dhfstyle.is-top .p-ds-anchorbox__item--chlg p:before {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-top .p-ds-anchorbox__item--org a,
#dhfstyle.is-top .p-ds-anchorbox__item--tech a,
#dhfstyle.is-top .p-ds-anchorbox__item--chlg a {
    -ms-transform: translateX(0);
    transform: translateX(0);
}

#dhfstyle.is-org .p-ds-anchorbox__item--top p:before {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

#dhfstyle.is-org .p-ds-anchorbox__item--top a {
    -ms-transform: translateX(40px);
    transform: translateX(40px);
}

#dhfstyle.is-org .p-ds-anchorbox__item--org p:before,
#dhfstyle.is-org .p-ds-anchorbox__item--org p:after {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-org .p-ds-anchorbox__item--org a {
    color: #00bacf;
    cursor: default;
    -ms-transform: translateX(20px);
    transform: translateX(20px);
}

#dhfstyle.is-org .p-ds-anchorbox__item--tech p:before,
#dhfstyle.is-org .p-ds-anchorbox__item--chlg p:before {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-org .p-ds-anchorbox__item--tech a,
#dhfstyle.is-org .p-ds-anchorbox__item--chlg a {
    -ms-transform: translateX(0);
    transform: translateX(0);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--top p:before,
#dhfstyle.is-tech .p-ds-anchorbox__item--org p:before {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--top p:after,
#dhfstyle.is-tech .p-ds-anchorbox__item--org p:after {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--top a,
#dhfstyle.is-tech .p-ds-anchorbox__item--org a {
    -ms-transform: translateX(40px);
    transform: translateX(40px);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--tech p:before,
#dhfstyle.is-tech .p-ds-anchorbox__item--tech p:after {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--tech a {
    color: #00bacf;
    cursor: default;
    -ms-transform: translateX(20px);
    transform: translateX(20px);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--chlg p:before {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-tech .p-ds-anchorbox__item--chlg a {
    -ms-transform: translateX(0);
    transform: translateX(0);
}

#dhfstyle.is-chlg .p-ds-anchorbox__item--top p:before,
#dhfstyle.is-chlg .p-ds-anchorbox__item--org p:before,
#dhfstyle.is-chlg .p-ds-anchorbox__item--tech p:before,
#dhfstyle.is-ftr .p-ds-anchorbox__item--top p:before,
#dhfstyle.is-ftr .p-ds-anchorbox__item--org p:before,
#dhfstyle.is-ftr .p-ds-anchorbox__item--tech p:before {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

#dhfstyle.is-chlg .p-ds-anchorbox__item--top p:after,
#dhfstyle.is-chlg .p-ds-anchorbox__item--org p:after,
#dhfstyle.is-chlg .p-ds-anchorbox__item--tech p:after,
#dhfstyle.is-ftr .p-ds-anchorbox__item--top p:after,
#dhfstyle.is-ftr .p-ds-anchorbox__item--org p:after,
#dhfstyle.is-ftr .p-ds-anchorbox__item--tech p:after {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-chlg .p-ds-anchorbox__item--top a,
#dhfstyle.is-chlg .p-ds-anchorbox__item--org a,
#dhfstyle.is-chlg .p-ds-anchorbox__item--tech a,
#dhfstyle.is-ftr .p-ds-anchorbox__item--top a,
#dhfstyle.is-ftr .p-ds-anchorbox__item--org a,
#dhfstyle.is-ftr .p-ds-anchorbox__item--tech a {
    -ms-transform: translateX(40px);
    transform: translateX(40px);
}

#dhfstyle.is-chlg .p-ds-anchorbox__item--chlg p:before,
#dhfstyle.is-chlg .p-ds-anchorbox__item--chlg p:after,
#dhfstyle.is-ftr .p-ds-anchorbox__item--chlg p:before,
#dhfstyle.is-ftr .p-ds-anchorbox__item--chlg p:after {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

#dhfstyle.is-chlg .p-ds-anchorbox__item--chlg a,
#dhfstyle.is-ftr .p-ds-anchorbox__item--chlg a {
    color: #00bacf;
    cursor: default;
    -ms-transform: translateX(20px);
    transform: translateX(20px);
}

#dhfstyle .l-gnav {
    transition: .3s ease;
}

#dhfstyle.is-org .l-header,
#dhfstyle.is-tech .l-header,
#dhfstyle.is-chlg .l-header,
#dhfstyle.is-ftr .l-header {
    overflow: hidden;
}

#dhfstyle.is-org .l-gnav,
#dhfstyle.is-tech .l-gnav,
#dhfstyle.is-chlg .l-gnav,
#dhfstyle.is-ftr .l-gnav {
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}

.p-glo-expand {
    display: -ms-flexbox;
    display: flex;
    margin-top: 36px;
    width: 100%;

    -ms-flex-flow: column-reverse nowrap;

    flex-flow: column-reverse nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-glo-expand__img {
    width: 100%;
}

.p-glo-expand__img img {
    width: 100%;
}

.p-glo-expand__dt {
    margin-bottom: 20px;
    width: 100%;
}

.p-glo-expand__dt h4 {
    margin-bottom: 20px;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.5;
}

.p-glo-expand__dt h4 + p {
    margin-bottom: 7px;
}

.p-glo-expand__dt p {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

.p-glo-expand__dt p:not(:first-child) {
    margin-top: 0;
}

.p-glo-list dl {
    display: block;
    overflow: hidden;
    padding-top: 24px;
}

.p-glo-list dt {
    float: left;
    padding-top: 0;
    padding-right: 6.11621%;
    width: 25%;
}

.p-glo-list dt:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-glo-list dd {
    float: right;
    padding: 0 0 4px;
    width: 75%;
}

.p-glo-list dd:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-history {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-history__txt {
    display: -ms-flexbox;
    display: flex;
    padding: 0 6.4%;
    width: 100%;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.p-history__img {
    margin-top: 64px;
    padding-right: 6.4%;
    padding-left: 6.4%;
    width: 100%;
}

.p-history__item + .p-history__item {
    padding-top: 64px;
}

.p-hi-img {
    width: 100%;
}

.p-hi-img figure {
    width: 100%;
}

.p-hi-img figure img {
    width: 100%;
}

.p-hi-img figcaption {
    margin-top: 4px;
    text-align: right;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;
}

.p-me-ttl {
    margin-bottom: 28px;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1;
}

.p-me-txt {
    margin-top: 35px;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-me-txt:not(:last-child) {
    margin-top: 0;
    margin-bottom: 25px;
}

.p-en-txt {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-base {
    padding: 0 0 60px !important;
}

.p-base__header {
    z-index: 10;
    margin-left: 0 !important;
    width: 93.6% !important;
}

.p-base__body {
    margin-top: -16px;
    width: 100%;
}

.p-base__nav {
    position: relative;
    overflow: hidden;
    padding: 48px 0 0;
    width: 100%;
    background-color: #000;
}

.p-base__nav > p {
    margin: 0 auto 32px;
    padding: 11px 0;
    width: 87.2%;
    border: solid 1px rgba(255, 255, 255, .5);
    color: #fff;
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-base__depart {
    position: absolute;
    top: 48px;
    right: 0;
    left: 0;
    margin: auto;
    padding: 11px 0;
    width: 87.2%;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
}

.p-base__depart .c-btn-anchor,
.p-base__depart .c-btn-anchor--bk {
    display: block;
    padding: 11px 0;
    width: 100%;
    border-right: solid 1px rgba(255, 255, 255, .5);
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    border-left: solid 1px rgba(255, 255, 255, .5);
    color: #fff;
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.73333;
}

.p-base__depart .c-btn-anchor:after,
.p-base__depart .c-btn-anchor--bk:after {
    top: 22px;
    right: 26px;
    bottom: auto;
}

.p-base__lst {
    display: none;
}

.p-base__lst a {
    display: block;
    padding: 11px;
    width: 100%;
    border-right: solid 1px rgba(255, 255, 255, .5);
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    border-left: solid 1px rgba(255, 255, 255, .5);
    background-color: #000;
    color: #fff;
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.73333;
    transition: .3s ease;
    -ms-transform-origin: center top;
    transform-origin: center top;
}

.p-base__mask {
    position: absolute;
    top: 0;
    left: 57.14286%;
    z-index: 45;
    width: 57.14286%;
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

.p-base__maparea {
    position: relative;
    padding: 36px 0;
    width: 100%;
    background-color: #bbb;
}

.p-base__info {
    position: relative;
    padding: 32px 6.4%;
    width: 100%;
    -ms-transform-origin: center right;
    transform-origin: center right;
}

.p-base__info img {
    z-index: 0;
}

.p-base__map {
    width: 100%;
    height: 100%;
    background-color: #bbb;
}

.p-co-branch {
    position: relative;
}

.p-co-branch__lst {
    display: none;
    width: 100%;
    border-bottom: solid 1px rgba(255, 255, 255, .5);
}

.p-co-branch__lst.is-active {
    display: block;
}

.p-co-branch__lst a {
    display: block;
    margin: auto;
    padding: 20px 6.4%;
    border-top: solid 1px rgba(255, 255, 255, .5);
    color: #fff;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
    transition: .3s ease;
}

.p-co-branch__lst a:before,
.p-co-branch__lst a:after {
    transition: .3s ease;
}

.p-co-branch__lst a.is-active {
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    background-color: #fff;
    color: #000;
}

.p-co-branch__lst a.is-active:before {
    background-color: #000;
}

.p-co-branch__lst a.is-active:after {
    -ms-transform: rotate(0);
    transform: rotate(0);
}

.p-co-branch__lst > .p-base__info {
    display: none;
}

.p-co-branch__lst > .p-base__info--main {
    display: block;
}

.p-co-info {
    position: relative;
    z-index: 1;
    padding: 30px 6.86869%;
    width: 100%;
    background-color: #000;
}

.p-co-info__name {
    padding-top: 18px;
}

.p-co-info__name:after {
    background-color: #00498d;
}

.p-co-info__branch {
    position: absolute;
    top: 30px;
    left: 6.86869%;
    display: block;
    color: #00498d !important;
    font-weight: 400;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;
}

.p-co-info__address {
    margin-bottom: 8px;
}

.p-co-info__link a {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
    padding: 8px 0;
    border: none;
    color: #00498d;
    font-weight: 700;
}

.p-co-info__link a:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #00498d;
    content: "";
}

.p-co-info__tel:before {
    content: "TEL：";
}

.p-co-info__fax:before {
    content: "FAX：";
}

.p-co-info__mask {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

.p-co-info dd {
    color: #fff;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 1.5;
}

.p-factory__body {
    position: relative;
    padding: 6.4%;
    min-height: 300px;
    width: 100%;
}

.p-factory__selecter {
    position: relative;
    z-index: 50;
    margin-bottom: 24px;
    width: 100%;
    border-top: solid 1px rgba(0, 0, 0, .5);
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2.13333;
}

.p-factory__selecter.is-sp {
    border: solid 1px rgba(0, 0, 0, .5);
    border-radius: 0;
    box-shadow: none;
}

.p-factory__selecter.is-sp p {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    padding: 11px 0;
    width: 100%;
}

.p-factory__selecter.is-sp select {
    position: relative;
    z-index: 2;
    padding: 11px 0;
    width: 100%;
    border: none;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
    opacity: 0;

    -webkit-appearance: none;

    -moz-appearance: none;

    appearance: none;
}

.p-factory__selecter .c-btn-anchor--bk,
.p-factory__selecter option {
    display: block;
    padding: 11px 0;
    width: 100%;
    border-right: solid 1px rgba(0, 0, 0, .5);
    border-bottom: solid 1px rgba(0, 0, 0, .5);
    border-left: solid 1px rgba(0, 0, 0, .5);
    background-color: #f9f9f9;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.73333;
}

.p-factory__selecter .c-btn-anchor--bk:after,
.p-factory__selecter option:after {
    top: 22px;
    right: 26px;
    bottom: auto;
}

.p-factory__lst {
    display: none;
}

.p-factory__lst a {
    display: block;
    padding: 11px 0;
    width: 100%;
    border-right: solid 1px rgba(0, 0, 0, .5);
    border-bottom: solid 1px rgba(0, 0, 0, .5);
    border-left: solid 1px rgba(0, 0, 0, .5);
    background-color: #f9f9f9;
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.73333;
    transition: .3s ease;
    -ms-transform-origin: center top;
    transform-origin: center top;
}

.p-factory__lst a.is-active {
    display: none;
}

.p-factory__box {
    position: relative;
    height: 455px;
}

.p-factory__item {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    opacity: 0;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.p-factory__item.is-active {
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
}

.p-factory__txtarea {
    width: 100%;
}

.p-factory__info {
    position: relative;
    width: 100%;
}

.p-factory__info dd {
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

.p-factory__handling {
    margin-top: 16px;
}

.p-factory__handling dt {
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.33333;
}

.p-factory__handling ul {
    font-size: 0;
}

.p-factory__handling li {
    display: inline-block;
    margin-right: 8px;
    margin-bottom: 8px;
    padding: 4px 16px;
    border: solid 1px #000;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

.p-factory__access {
    margin-top: 14px;
    margin-bottom: 24px;
}

.p-factory__access dt {
    margin-bottom: 12px;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.33333;
}

.p-factory__access dd {
    padding-left: 10em;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
}

.p-factory__access dd span {
    display: inline-block;
    margin-left: -10em;
}

.p-factory__access dd.em12 {
    padding-left: 12em;
}

.p-factory__access dd.em12 span {
    margin-left: -12em;
}

.p-factory__name {
    color: #000;
}

.p-factory__name:after {
    background-color: #00498d;
}

.p-factory__link a {
    position: relative;
    display: inline-block;
    padding: 8px 0;
    color: #00498d;
}

.p-factory__link a:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #00498d;
    content: "";
    transition: .3s ease;
}

.p-factory__img {
    width: 100%;
}

.p-factory__img img {
    max-width: 100%;
}

.p-philosophy__ttl {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
}

.p-phi-object {
    position: relative;
    margin-bottom: 56px;
    text-align: center;
}

.p-phi-object img {
    max-width: 100%;
}

.p-phi-object__link {
    left: 50%;
    display: none;
    margin-left: 198px;
    width: 64px;
    height: 22px;
}

.p-phi-object__link--item1 {
    position: absolute;
    top: 80px;
}

.p-phi-object__link--item2 {
    position: absolute;
    top: 145px;
}

.p-phi-object__link--item3 {
    position: absolute;
    top: 215px;
}

.p-phi-object__link--item4 {
    position: absolute;
    top: 283px;
}

dl.p-phi-lst,
dl.p-phi-lst--large,
dl.p-phi-lst--en {
    display: -ms-flexbox;
    display: flex;
    border-top: solid 1px #000;
    border-right: solid 1px #000;
    border-left: solid 1px #000;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

dl.p-phi-lst:last-child,
dl.p-phi-lst--large:last-child,
dl.p-phi-lst--en:last-child {
    border-bottom: solid 1px #000;
}

dl.p-phi-lst dt,
dl.p-phi-lst--large dt,
dl.p-phi-lst--en dt,
dl.p-phi-lst dd,
dl.p-phi-lst--large dd,
dl.p-phi-lst--en dd {
    vertical-align: top;
}

dl.p-phi-lst dt,
dl.p-phi-lst--large dt,
dl.p-phi-lst--en dt {
    padding: 20px 7.33945% 0;
    width: 100%;
    color: #00498d;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

dl.p-phi-lst dt:before,
dl.p-phi-lst--large dt:before,
dl.p-phi-lst--en dt:before {
    display: inline-block;
    width: 34px;
    color: #000;
    content: attr(data-num) "";
    vertical-align: -3px;
    text-align: left;
    letter-spacing: -.08em;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    font-size: 1.5rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
}

dl.p-phi-lst dd,
dl.p-phi-lst--large dd,
dl.p-phi-lst--en dd {
    padding: 0 7.33945% 18px;
    width: 100%;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.33333;
}

dl.p-phi-lst--large:last-child {
    border-bottom: solid 1px #000;
}

dl.p-phi-lst--large dt,
dl.p-phi-lst--large dd {
    display: inline-block;
    vertical-align: top;
}

dl.p-phi-lst--large dt {
    padding: 23px 7.33945% 0;
    width: 100%;
    color: #00498d;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2.44444;
}

dl.p-phi-lst--large dt:before {
    display: inline-block;
    width: 45px;
    color: #000;
    content: attr(data-num) "";
    vertical-align: -7px;
    text-align: left;
    letter-spacing: -.09em;
    font-weight: 500;
    font-style: normal;
    font-size: 34px;
    font-size: 2.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.29412;
}

dl.p-phi-lst--large dd {
    padding: 0 7.33945% 23px;
    width: 100%;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.33333;
}

dl.p-phi-lst--en {
    display: block;
}

dl.p-phi-lst--en dt {
    padding: 23px 7.33945% 0;
    width: 100%;
    color: #00498d;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.33333;
}

dl.p-phi-lst--en dt:before {
    display: inline-block;
    width: 45px;
    color: #000;
    content: attr(data-num) "";
    vertical-align: -7px;
    text-align: left;
    letter-spacing: -.09em;
    font-weight: 500;
    font-style: normal;
    font-size: 34px;
    font-size: 2.125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.29412;
}

dl.p-phi-lst--en dd {
    padding: 0 7.33945% 23px;
    width: 100%;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 1.33333;
}

ol.p-phi-lst {
    margin-top: 32px;
    border-top: solid 1px #000;
    counter-reset: phi;
}

ol.p-phi-lst li {
    padding: 18px 9.17431%;
    border-right: solid 1px #000;
    border-bottom: solid 1px #000;
    border-left: solid 1px #000;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

ol.p-phi-lst li:before {
    display: inline-block;
    width: 34px;
    content: "0" counter(phi);
    counter-increment: phi;
    vertical-align: -3px;
    text-align: left;
    letter-spacing: -.06em;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    font-size: 1.5rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.25;
}

.p-co-video {
    position: relative;
    width: 100%;
}

.p-co-video:before {
    display: block;
    padding-top: 56.25%;
    content: "";
}

.p-co-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.p-contact {
    padding: 54px 0 !important;
    overflow: hidden;

}

.p-contact--eng {
    padding-bottom: 95px !important;
}

.p-contact .alert {
    display: none;
    color: #00498d;
}

.is-required:after {
    color: #cf0006;
    content: "*";
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-contact__tab {
    margin-top: 0 !important;
    margin-bottom: 36px;
    padding-bottom: 24px;
    border-bottom: solid 1px #bbb;
}

.p-contact__tab .is-required:after {
    color: #00498d;
    content: "*";
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-contact__tab label {
    display: block;
    font-weight: 700;
}

.p-contact__tab label.radio {
    display: inline-block;
    margin-bottom: 6px;
    font-weight: 400;
}

.p-contact__tab input[type="radio"] {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
}

.p-contact__tab input[type="radio"] + .radio {
    position: relative;
    margin-right: 2.98507%;
    font-weight: 700;
}

.p-contact__tab input[type="radio"] + .radio:before {
    display: inline-block;
    margin-right: 8px;
    width: 16px;
    height: 16px;
    border: solid 1px #bbb;
    border-radius: 50%;
    content: "";
    vertical-align: -2px;
}

.p-contact__tab input[type="radio"] + .radio:after {
    position: absolute;
    top: 6px;
    left: 0;
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-image: -ms-radial-gradient(center center, circle farthest-side, #00bacf 10%, #00498d);
    background-image: gradient(center, circle farthest-side, #00bacf, #00498d);
    background-image: -webkit-radial-gradient(center center, circle farthest-side, #00bacf 10%, #00498d);
    content: "";
    transition: .3s ease;
    -ms-transform: scale(0);
    transform: scale(0);
}

.p-contact__tab input[type="radio"]:checked + .radio {
    color: #00498d;
}

.p-contact__tab input[type="radio"]:checked + .radio:after {
    -ms-transform: scale(1);
    transform: scale(1);
}

.p-contact__box {
    position: relative;
}

.p-contact__form {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
}

.p-contact__form.is-active {
    position: static;
    display: block;
}

.p-contact__conf {
    position: fixed;
    top: 40px;
    right: 0;
    left: 0;
    z-index: 100;
    overflow: hidden;
    margin: auto;
    width: 87.2%;
    height: calc(100vh - 80px);
    background-color: #fff;
}

.p-contact__mask {
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
}

.p-conf {
    display: none;
    opacity: 0;
}

.p-conf__body {
    overflow-y: scroll;
    padding: 64px 7.14286%;
    height: 100%;
}

.p-conf__body dt {
    padding-right: 1em;
}

.p-conf__btn {
    display: block;
    margin: auto;
    width: 100%;
    color: #fff !important;
    text-decoration: none !important;
}

.p-conf__send {
    margin-top: 40px;
}

.p-conf__back {
    margin-top: 24px;
}

.p-eng-overlay {
    z-index: 88;
    display: none;
}

.p-news, .p-video {
    margin-bottom: 42px;
    padding-top: 80px;
    padding-right: 6.4%;
    padding-left: 6.4%;
}

.p-news a {
    color: #000;
    transition: .3s ease;
}

.p-news__lst {
    width: 100%;
}
.p-news__lst li{
    width:49%;
}
.p-news__item {
    border-bottom: solid 1px #bbb;
   
}



.p-news__item a {
    display: block;
    padding: 13px 0;
    color: #000;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.53846;
    transition: .3s ease;
}

.p-news__date {
    padding-right: 3.2%;
    padding-left: 3.2%;
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.p-news__ttl {
    padding-right: 3.2%;
    padding-left: 3.2%;
}

.p-video__lst {
    overflow: hidden;
}

.p-video__lst li {
    width: 31%;
  
}

.p-video__ttl {
    text-align: center;
    color: #333;
}

.p-nnav {
    position: relative;
    margin: 22px auto 0;
    width: 100%;
    text-align: center;
}

.p-nnav__arrow {
    position: absolute;
    display: inline-block;
    padding: 5px 12px;
}

.p-nnav__arrow img {
    width: 6px;
    height: auto;
    vertical-align: middle;
}

.p-nnav__arrow--prev {
    top: 0;
    left: 0;
}

.p-nnav__arrow--next {
    top: 0;
    right: 0;
}

.p-nnav__pager {
    display: inline-block;
    padding: 6px;
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.5;
}

.p-nnav .page-numbers {
    display: inline-block;
    padding: 6px;
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.5;
}

.p-nnav .page-numbers.current {
    color: #00498d;
}

.p-nnav .page-numbers.prev {
    position: absolute;
    top: 0;
    left: 7.64526%;
    padding: 6px 12px;
}

.p-nnav .page-numbers.next {
    position: absolute;
    top: 0;
    right: 7.64526%;
    padding: 6px 12px;
}

.p-news-detail {
    padding: 0 6.4%;
    width: 100%;
}

.p-news-detail__header {
    margin-bottom: 32px;
    padding: 55px 0 8px;
    border-bottom: solid 1px #00498d;
}

.p-news-detail__date {
    display: inline-block;
    font-weight: 400;
    font-style: normal;
    font-size: 13px;
    font-size: .8125rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 2;
    padding-right: 10px;
}

.p-news-detail__date--en {
    width: 120px;
}

.p-news-detail__category {
    position: relative;
    display: inline-block;
    padding-left: 16px;
    color: #00498d;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;
}

.p-news-detail__category a {
    color: #00498d;
}

.p-news-detail__category:before {
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
    width: 1px;
    height: 13px;
    background-color: #000;
    content: "";
}

.p-news-detail__ttl {
    font-weight: 700;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.3;
}

.p-news-detail__body {
    overflow: hidden;
    padding-bottom: 44px;
}

.p-news-detail__body h2,
.p-news-detail__body h3,
.p-news-detail__body h4 {
    padding-top: 35px;
    color: #000;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
}

.p-news-detail__body h2:after,
.p-news-detail__body h3:after,
.p-news-detail__body h4:after {
    background-color: #00498d;
}

.p-news-detail__body h5,
.p-news-detail__body h6 {
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 2;
}

.p-news-detail__body p,
.p-news-detail__body li {
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 2;
}

.p-news-detail__body p,
.p-news-detail__body ul,
.p-news-detail__body ol {
    margin-bottom: 36px;
}

.p-news-detail__body ul {
    padding-left: 1em;
}

.p-news-detail__body ul li {
    position: relative;
}

.p-news-detail__body ul li:before {
    position: absolute;
    top: 12px;
    left: -10px;
    display: inline-block;
    margin: auto;
    width: 4px;
    height: 4px;
    background-color: #000;
    content: "";
}

.p-news-detail__body ol {
    padding-left: 1em;
    counter-reset: num;
}

.p-news-detail__body ol li:before {
    display: inline-block;
    margin-left: -1em;
    width: 1em;
    content: counter(num) ".";
    counter-increment: num;
}

.p-news-detail__body a {
    color: #00498d;
    text-decoration: underline;
}

.p-news-detail__body > img {
    padding: 7px 0;
    max-width: 100%;
}

.p-news-detail__body .alignleft {
    float: left;
    margin-right: 16px;
}

.p-news-detail__body .alignleft:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-news-detail__body .alignright {
    float: right;
}

.p-news-detail__body .alignright:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-news-detail__footer {
    padding: 25px 0 66px;
    border-top: solid 1px #bbb;
    text-align: right;
}

.p-bi-heat {
    position: relative;
}

.p-bi-heat:after {
    position: absolute;
    top: 46px;
    left: 17px;
    display: block;
    width: 1px;
    background-color: #000;
    content: "";
}

.p-bi-heat--item1:after {
    height: calc(100% - 92px);
}

.p-bi-heat--item2:after {
    height: calc(100% - 92px);
}

.p-bi-heat dt {
    display: inline-block;
    margin-bottom: 16px;
    padding: 6px 14px;
    width: 150px;
    border: solid 1px #000;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
}

.p-bi-heat dd {
    position: relative;
    margin-left: 18px;
    padding-left: 35px;
    white-space: nowrap;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2.13333;
}

.p-bi-heat dd:before {
    position: absolute;
    top: 15px;
    left: 0;
    display: block;
    width: 25px;
    height: 1px;
    background-color: #000;
    content: "";
}

.p-bi-spraying {
    padding-top: 60px !important;
}

.p-bi-spraying h3 {
    margin-bottom: 32px;
}

.p-bi-fusing__item1 {
    margin-bottom: 97px;
}

.p-bi-fusing__item1 h3 {
    margin-bottom: 60px;
}

.p-bi-fusing__item2 {
    margin-bottom: 142px;
}

.p-bi-fusing__img1 {
    margin-bottom: 24px;
}

.p-bi-fusing__merit {
    margin-bottom: 48px;
}

.p-bi-fusing__info {
    margin-bottom: 110px;
}

.p-bi-fusing__table {
    margin-bottom: 60px;
}

.p-bi-difference__body {
    overflow: hidden;
}

.p-bi-free {
    padding-bottom: 120px !important;
}

.p-bi-free__txt {
    margin-bottom: 50px;
}

.p-bi-boiler__img {
    margin-top: 42px;
}

.p-bi-works__figure {
    margin-top: 32px;
    margin-bottom: 52px;
}

.p-bi-works__figure figcaption {
    text-align: left;
}

.p-bi-works__scene {
    margin-top: 64px;
}

.p-bi-works__scene p {
    margin-bottom: 10px;
}

.p-bi-works__scene > div {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-bi-works__scene > div figure + figure {
    margin-left: 2.48756%;
}

.p-bi-works__scene > div figcaption {
    text-align: right;
}

.p-bi-product {
    padding-bottom: 60px !important;
}

.p-chara__lead {
    padding-bottom: 110px !important;
}

.p-chara__lead ul {
    margin-bottom: 60px;
    font-weight: 700;
}

.p-chara__txt {
    margin-bottom: 60px;
}

.p-chara-process__body {
    padding: 64px 6.4% 0;
}

.p-chara-process__img {
    width: 100%;
}

.p-chara-process__flow {
    margin-top: 55px;
    width: 100%;
    counter-reset: chara;
}

.p-chara-process__flow li {
    position: relative;
    padding: 16px 3.96825% 16px calc(7.93651% + 28px);
    border: solid 1px #000;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
}

.p-chara-process__flow li:before {
    position: absolute;
    top: 16px;
    left: 3.96825%;
    content: "0" counter(chara);
    counter-increment: chara;
    white-space: nowrap;
    letter-spacing: -.03em;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    font-size: 1.875rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
}

.p-chara-process__flow li:not(:first-child) {
    margin-top: 49px;
}

.p-chara-process__flow li:not(:first-child):after {
    position: absolute;
    top: -37px;
    right: 0;
    left: 0;
    display: block;
    margin: auto;
    width: 1px;
    height: 25px;
    background-color: #000;
    content: "";
}

.p-sfcl-example__img {
    margin-top: 32px;
}

.p-mcn-pipe__app {
    margin-top: 32px;
}

.p-mcn-pipe__ictures {
    margin-top: 32px;
}

.p-mcp-intro__img {
    margin-top: 26px;
}

.p-mcp-ictures__img {
    margin-top: 20px;
}

.p-mcp-ictures__img figure {
    width: 100%;
}

.p-mcp-ictures__img figure + figure {
    margin-top: 24px;
}

.p-mcp-ictures__img figcaption {
    margin-bottom: 6px;
    text-align: left;
}

.p-mcp-ictures__img img {
    width: 100%;
}

.p-pl-system {
    padding-bottom: 90px !important;
}

.p-pl-system__info {
    margin-bottom: 60px;
}

.p-pl-mete__txt {
    margin-bottom: 30px;
}

/* .p-product-nav
------------------------------ */
.p-product-nav, .p-news-nav {
    position: relative;
    z-index: 70;
    overflow: hidden;
    margin-left: 6.4%;
    width: 93.6%;
    height: 45px;
    background-image: linear-gradient(90deg, #00bacf 10%, #00498d 60%, #00bacf);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.p-product-nav__ttl, .p-news-nav__ttl {
    display: none;
    float: left;
    padding-left: 3.42857%;
    width: 23.07692%;
}

.p-product-nav__ttl:after, .p-news-nav__ttl:after {
    left: 16%;
}

.p-product-nav__search {
    display: none;
    width: 69.23077%;
}

.p-news-nav__search {
    width: 69.23077%;
}

.p-product-nav__search > li, .p-news-nav__search > li {
    width: calc(100% / 3);
    border-top: solid 1px rgba(255, 255, 255, .5);
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    border-left: solid 1px rgba(255, 255, 255, .5);
    text-align: center;
}

.p-product-nav__search > li:last-child, .p-news-nav__search > li:last-child {
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__search > li.is-active a, .p-news-nav__search > li.is-active a {
    background-color: #fff;
    color: #00498d;
    cursor: default;
}

.p-product-nav__search > li.is-active a:after, .p-news-nav__search > li.is-active a:after {
    -ms-transform: rotate(0);
    transform: rotate(0);
}

.p-product-nav__search a, .p-news-nav__search a {
    position: relative;
    display: block;
    padding: 20px;
    color: #fff;
}

.p-product-nav__search a:before,
.p-product-nav__search a:after {
    position: absolute;
    top: 0;
    right: 23px;
    bottom: 0;
    z-index: 1;
    display: block;
    margin: auto;
    width: 20px;
    height: 1px;
    background-color: currentcolor;
    content: "";
    transition: .3s ease;
}

.p-product-nav__search a:after {
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -ms-transform-origin: center;
    transform-origin: center;
}

.p-product-nav__items, .p-news-nav__items {
    display: none;
    margin-bottom: 24px;
    margin-left: 23.07692%;
    width: 69.23077%;
}

.p-product-nav__items ul, .p-newst-nav__items ul {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.p-product-nav__items ul > li, .p-news-nav__items ul > li {
    box-sizing: border-box;
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    border-left: solid 1px rgba(255, 255, 255, .5);
    text-align: center;
}

.p-product-nav__items ul > li:first-child, .p-product-nav__items--use ul > li:nth-child(2), .p-product-nav__items--use ul > li:nth-child(3) {
    border-top: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--use ul > li:last-child {
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items ul > li.is-active a, .p-news-nav__items ul > li.is-active a {
    background-color: #fff;
    color: #00498d;
}

.p-product-nav__items ul > li.is-disabled a {
    pointer-events: none;
}

.p-product-nav__items ul > li li {
    border-top: solid 1px rgba(255, 255, 255, .5);
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    height: 100%;
    color: #fff;
    line-height: 1.2;
    transition: .3s ease;

    -ms-flex-pack: center;

    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-product-nav__items--category {
    margin-bottom: 0;
    padding-top: 24px;
}

.p-product-nav__items--category ul > li {
    width: 50%;
}

.p-product-nav__items--category ul > li.is-active a:after {
    background-image: url('/theme/default/images/anchor.svg');
}

.p-product-nav__items--category ul > li:nth-child(2n) {
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--product {
    float: left;
    margin-bottom: 84px;
    padding-top: 24px;
    width: calc(34.61538% + 1px);
}

.p-product-nav__items--product:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-product-nav__items--product ul {
    width: 100%;
}

.p-product-nav__items--product li {
    width: 100%;
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--product li:not(:first-child) {
    border-top: none !important;
}

.p-product-nav__items--service {
    float: right;
    margin-right: 7.69231%;
    margin-left: 0;
    padding-top: 24px;
    width: calc(34.61538% - 1px);
}

.p-product-nav__items--service:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-product-nav__items--service ul {
    display: none;
}

.p-product-nav__items--service li {
    width: 50%;
    float: left;
    border-right: solid 1px rgba(255, 255, 255, .5);
    border-left: none !important;
    border-top: none;
}

.p-product-nav__items--service li:nth-child(1) {
    border-top: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--service li:nth-child(2) {
    border-top: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--use {
    padding-top: 24px;
}

.p-product-nav__items--use li {
    width: 33.33333%;
}

.p-product-nav__items--use li:nth-child(3n) {
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--use li:last-child {
    width: calc(33.3333% + 1px);
}

.p-product-nav__items--type {
    padding-top: 24px;
}

.p-product-nav__items--type ul {
    margin-top: -4px;
    margin-left: -4px;
}

.p-product-nav__items--type li {
    margin: 4px;
    border: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--type li:nth-child(3n) {
    border-right: solid 1px rgba(255, 255, 255, .5);
}

.p-product-nav__items--type a {
    position: relative;
    display: block;
    padding: 8px;
    color: #fff;
    font-size: 12px;
    font-size: .75rem;
    line-height: 1;
    transition: .3s ease;
}

.p-product-nav__name {
    position: absolute;
    top: 50%;
    right: 3.07692%;
    display: none;
    color: #000;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;

    -webkit-writing-mode: vertical-rl;

    -ms-writing-mode: tb-rl;

    writing-mode: vertical-rl;
}

.p-product-nav__name--product {
    height: 160px;
    -ms-transform: translateY(-73px);
    transform: translateY(-73px);
}

.p-product-nav__btn {
    display: none;
    float: right;
    overflow: hidden;
    margin-right: 7.69231%;
    width: 23.07692%;
}

.p-product-nav__btn:after {
    display: block;
    clear: both;
    height: 0;
    content: "";
}

.p-product-nav__btn a {
    -ms-transform: translateY(-60px);
    transform: translateY(-60px);
    -ms-transform-origin: left top;
    transform-origin: left top;
}

/* .p-product
------------------------------ */
.p-product--index {
    margin-top: 60px;
    padding-bottom: 60px;
}

.p-product--index .p-product__item {
    padding-bottom: 85px;
}

.p-product--index .p-product__body {
    padding-bottom: 0;
}

.p-product__item {
    position: relative;
}

.p-product__item--reverse {
    overflow: hidden;
}

.p-product__item--reverse .p-product__header {
    margin-left: 6.4%;
    padding-left: 0;
}

.p-product__item--reverse .p-product__name,
.p-product__item--reverse .p-product__btn {
    margin-left: 8.10811%;
}

.p-product__item--reverse .p-product__img {
    margin-left: 0;
}

.p-product__item--category {
    position: relative;
}

.p-product__item--category .p-product__header {
    width: 93.6%;
}

.p-product__item--category .p-product__img {
    margin-left: 6.4%;
    width: 93.6%;
}

.p-product__item--category .p-product__img img {
    width: 100%;
    height: auto;
}

.p-product__item--category.p-product__item--reverse .p-product__name {
    margin-left: 6.83761%;
}

.p-product__item--category.p-product__item--reverse .p-product__img {
    margin-left: 0;
}

.p-product__item + .p-product__item {
    margin-top: 60px;
}

.p-product__header {
    padding: 40px 8.10811%;
    width: 93.6%;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.p-product__name {
    position: relative;
    color: #fff;
}

.p-product__body {
    padding-bottom: 60px;
    width: 100%;
}

.p-product__img {
    position: relative;
    margin-top: -16px;
    margin-left: 6.4%;
    width: 93.6%;
}

.p-product__img img {
    width: 100%;
    height: auto;
}

.p-product__img--tl2 {
    margin-top: -16px;
    margin-left: 0;
}

.p-product__txt {
    position: relative;
    padding: 16px 6.4% 20px;
    width: 100%;
}

.p-product__txt p {
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 2;
}

.p-product__service {
    position: relative;
    padding: 3% 6.4%;
}

.p-product__service dt {
    margin-bottom: 0;
}

.p-product__service dd {
    width: 86.66667%;
}

.p-product__service dd a {
    box-shadow: 0 -1px 0 0 #000 inset;
    color: #000;
}

.p-product__btn {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 85%;
}

.p-result {
    display: none;
    margin-top: 120px;
    padding: 0 7.14286% 53px;
}

.p-result__header {
    position: relative;
    margin-left: -8.33333%;
    padding: 62px 8.33333%;
    width: 58.33333%;
    background-color: #00498d;
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-result__ttl {
    margin-bottom: 20px;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    font-size: 20px;
    font-size: 1.25rem;

    line-height: 1.5;
}

.p-result__tag {
    margin: -4px;
    font-size: 0;
}

.p-result__tag span {
    display: inline-block;
    margin: 4px;
    padding: 8px;
    min-width: 100px;
    border: solid 1px #fff;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    font-size: 12px;
    font-size: .75rem;
    line-height: 1;
}

.p-result__body {
    padding-top: 75px;
}

.p-pro-kind__body {
    margin-top: -16px;
}

.p-pro-kind__item + .p-pro-kind__item {
    margin-top: 32px;
}

.p-pro-kind__item .c-olst__name {
    margin-bottom: 14px;
    padding-bottom: 10px;
}

.p-pro-kind__item--more + .p-pro-kind__item {
    margin-top: 60px;
}

.p-pro-kind__btn {
    margin-top: 40px;
}

.p-pro-index__body {
    padding-top: 64px;
}

.p-pro-index__ttl {
    padding: 0 6.4% 15px;
}

.p-pro-index__ttl:after {
    left: 6.4%;
}

.p-pro-chara__img {
    margin-bottom: 30px;
    width: 100%;
}

.p-pro-chara__img--graph1 {
    margin-bottom: 30px;
    width: 99.75124%;
}

.p-pro-chara__img--graph1 img {
    width: 100%;
}

.p-pro-chara__img--graph2 {
    margin-bottom: 30px;
    width: 54.47761%;
}

.p-pro-chara__img--graph2 img {
    width: 100%;
}

.p-pro-chara__heading {
    margin-top: 50px;
    margin-bottom: 24px;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
}

/* .p-pro-anchor
------------------------------ */
.p-pro-anchor {
    padding-top: 52px;
}

.p-pro-anchor__ttl {
    margin-bottom: 6px;
}

.p-pro-anchor__ttl span {
    display: block;
    margin-top: -3px;
    margin-left: -12px;
}

.p-pro-anchor__sttl {
    margin-top: 8px;
}

.p-pro-anchor__lst {
    font-size: 0;
}

.p-pro-anchor__item {
    position: relative;
    display: inline-block;
    font-size: 14px;
    font-size: 0.65625rem;
    line-height: 1.5;
}

.p-pro-anchor__item:not(:last-child) {
    margin-right: 20px;
    padding-right: 20px;
}

.p-pro-anchor__item:not(:last-child):before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    margin: auto;
    width: 1px;
    height: 12px;
    background-color: rgba(0, 0, 0, .2);
    content: "";
}

.p-pro-anchor__item a {
    color: #000;
    transition: .2s cubic-bezier(.645, .045, .355, 1);
}

.p-pro-anchor__btn {
    margin-top: 24px;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;

    line-height: 1.5;
}

/* .p-pro-machine
------------------------------ */
.p-pro-machine__lst .c-olst__num {
    opacity: 0;
}

.p-pro-machine__lst .c-olst__name {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.5;
}

.p-pro-small__chara2 {
    margin-top: 64px;
}

.p-pro-small__const {
    margin-top: 64px;
}

.p-pro-small__alumina {
    overflow: hidden;
    margin-top: 72px;
}

.p-pro-small__graphite {
    overflow: hidden;
    margin-top: 76px;
}

.p-pro-small__sample {
    margin-top: 68px;
}

.p-pro-small__product {
    margin-top: 66px;
}

.p-sml-video {
    padding-top: 76px;
}

.p-sml-video__caption {
    margin-top: 28px !important;
    margin-bottom: 17px;
}

.p-sml-video__item {
    position: relative;
}

.p-sml-video__item:before {
    display: block;
    padding-top: 56.25%;
    content: "";
}

.p-sml-video__item iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.p-sml-chara {
    padding-top: 10px;
}

.p-sml-chara__img {
    margin: 0 auto 48px;
    width: 60%;
}

.p-sml-chara__img img {
    width: 100%;
    vertical-align: top;
}

.p-sml-chara__desc dl {
    margin-top: 14px;
}

.p-sml-chara__desc dt {
    font-weight: 700;
}

.p-sml-chara__desc dd + dt {
    margin-top: 14px;
}

.p-sml-chara--item1 .p-sml-chara__img {
    padding-top: 8px;
}

.p-sml-chara--item2 .p-sml-chara__img {
    padding-top: 10px;
}

.p-sml-const {
    margin-top: 48px;
}

.p-sml-const img {
    width: 100%;
}

.p-pro-steam__const {
    margin-top: 66px;
}

.p-pro-steam__use {
    margin-top: 76px;
}

.p-pro-steam__spec {
    overflow: hidden;
    margin-top: 50px;
}

.p-pro-steam__sample {
    margin-top: 75px;
}

.p-pro-steam__product {
    margin-top: 66px;
}

.p-stm-dsh {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-stm-dsh li {
    position: relative;
    margin: auto;
    max-width: 186px;
    width: 100%;
    text-align: center;
}

.p-stm-dsh li:not(:first-child) {
    margin-top: 16px;
}

.p-stm-dsh li img {
    width: 100%;
}

.p-stm-dsh p {
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    margin: auto;
    padding: 0 1em;
    font-weight: 700;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.p-stm-dsh p span {
    color: #00498d;
}

.p-stm-const img {
    width: 100%;
}

.p-recruit-news {
    display: -ms-flexbox;
    display: flex;
    padding: 16px 3.4188%;
    border-top: solid 1px rgba(0, 0, 0, .25);
    border-bottom: solid 1px rgba(0, 0, 0, .25);
    color: #000;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-recruit-news + .p-recruit-news {
    border-top: none;
}

.p-recruit-news a {
    display: -ms-flexbox;
    display: flex;
    padding: 16px 3.4188%;
    color: #000;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;
    transition: .3s ease;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-recruit-news__date {
    width: 100%;
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.p-recruit-news__ttl {
    width: 100%;
}

.p-recruit {
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 52px;
    width: 93.6%;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-recruit__btn {
    position: absolute;
    bottom: 40px;
    left: 10.56106%;
    width: 78.87789%;
}

.p-recruit-newgr,
.p-recruit-career {
    padding: 32px 6.4%;
    height: 365px;
    background-position: left center;
    background-size: cover;
    background-repeat: no-repeat;
}

.p-recruit-newgr .c-blst,
.p-recruit-career .c-blst {
    min-height: 300px;
    background-color: #000;
}

.p-recruit-newgr .c-blst__ttl:after,
.p-recruit-career .c-blst__ttl:after {
    background-color: #00bacf;
}

.p-recruit-newgr .c-blst__name,
.p-recruit-career .c-blst__name {
    top: 48px;
    right: 10.56106%;
    color: #00bacf;
}

.p-recruit-newgr .c-blst__txt,
.p-recruit-career .c-blst__txt {
    color: #fff;
}

.p-recruit-newgr {
    width: 100%;
    background-image: url('/theme/default/images/top_img01.jpg');
}

.p-recruit-newgr .c-blst {
    padding: 40px 20px;
    width: 100%;
}

.p-recruit-career {
    width: 100%;
    background-image: url('/theme/default/images/top_img02.jpg');
}

.p-recruit-career .c-blst {
    padding: 40px 10.56106%;
    width: 100%;
}

.p-recruit-flow {
    padding: 32px 6.4% 55px;
}

.p-recruit-guide {
    margin-top: 60px !important;
}

.p-recruit-contact {
    padding-bottom: 52px;
}

.p-story {
    position: relative;
}

.p-story--index {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column-reverse nowrap;

    flex-flow: column-reverse nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-story--index .p-story__body {
    padding: 0;
    background-image: url('/theme/default/images/story01_01.jpg');
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

.p-story--index .p-story__body .p-str-ttl__txtarea {
    position: relative;
    overflow: hidden;
    margin: 97px auto 0;
    padding: 50px 6.4% 30px;
    width: 100%;
    background-color: #fff;
}

.p-story--index .p-story__body .p-str-ttl__txtarea:after {
    position: absolute;
    top: 0;
    right: 6.4%;
    display: block;
    width: 65.4%;
    height: 100%;
    background-color: #f9f9f9;
    content: "";
}

.p-story--index .p-story__body .p-str-ttl__txtarea .p-str-ttl__name,
.p-story--index .p-story__body .p-str-ttl__txtarea .p-str-ttl__txt {
    z-index: 1;
}

.p-story--index .p-str-ttl__name span {
    color: #000;
}

.p-story--detail .p-story__kv > .c-mask-alpbk {
    position: relative;
}

.p-story__kv {
    width: 100%;
}

.p-story__kv.is-fixed .p-story-img2 {
    display: none;
}

.p-story__kv.is-fixed .p-story-img3 {
    display: none;
}

.p-story__kv.is-fixed .p-story-img4 {
    display: none;
}

.p-story__kv.is-scroll {
    position: static;
}

.p-story__img {
    width: 100%;
    height: 447px;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
}

.p-story__img--story1.p-story-img1 {
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url('/theme/default/images/story01_01.jpg');
    opacity: 1;
}

.p-story__img--story1.p-story-img2 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 1;
    background-image: url('/theme/default/images/story01_02.jpg');
    background-position: left 330px top;
}

.p-story__img--story1.p-story-img3 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 2;
    background-image: url('/theme/default/images/story01_03.jpg');
}

.p-story__img--story1.p-story-img4 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 3;
    background-image: url('/theme/default/images/story01_04.jpg');
    background-position: left 440px top;
}

.p-story__img--story2.p-story-img1 {
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url('/theme/default/images/story02_01.jpg');
    background-position: center top;
    opacity: 1;
}

.p-story__img--story2.p-story-img2 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 1;
    background-image: url('/theme/default/images/story02_02.jpg');
    background-position: left 360px top;
}

.p-story__img--story2.p-story-img3 {
    position: relative;
    top: auto;
    right: 0;
    bottom: 0;
    z-index: 2;
    width: 50%;
    background-image: url('/theme/default/images/story02_03.jpg');
    background-position: right top;
}

.p-story__img--story2.p-story-img4 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 3;
    background-image: url('/theme/default/images/story02_04.jpg');
}

.p-story__img--story3.p-story-img1 {
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url('/theme/default/images/story03_01.jpg');
    opacity: 1;
}

.p-story__img--story3.p-story-img2 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 1;
    background-image: url('/theme/default/images/story03_02.jpg');
    background-position: left 400px top;
}

.p-story__img--story3.p-story-img3 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 2;
    background-image: url('/theme/default/images/story03_03.jpg');
    background-position: right top;
}

.p-story__img--story3.p-story-img4 {
    position: relative;
    top: auto;
    bottom: 0;
    left: -50%;
    z-index: 3;
    background-image: url('/theme/default/images/story03_04.jpg');
}

.p-story__img .c-mask-alpbk {
    z-index: 1;
}

.p-story__body {
    width: 100%;
}

.p-story__body section {
    padding-top: 40px;
}

.p-story__body section p {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-story__body section p + p {
    margin-top: 30px;
}

.p-story__txtarea {
    position: relative;
    padding: 0 6.4%;
}

.p-story__item {
    position: relative;
    display: block;
    width: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.p-story__item--item1 {
    background-image: url('/theme/default/images/story01_01.jpg');
}

.p-story__item--item2 {
    background-image: url('/theme/default/images/story02_01.jpg');
}

.p-story__item--item3 {
    background-image: url('/theme/default/images/story03_01.jpg');
}

.p-story__item .c-mask-alpbk {
    z-index: 0;
}

.p-story__thumb {
    margin-bottom: 40px;
    margin-left: -7.33945%;
    width: 114.6789%;
}

.p-story__thumb img {
    width: 100%;
}

.p-str-anchor {
    display: none;
    opacity: 0;
}

.p-str-ttl {
    position: absolute;
    top: 124px;
    left: 0;
    z-index: 2;
    padding-right: 6.4%;
    padding-left: 6.4%;
    width: 100%;
    height: 287px;
}

.p-str-ttl__name {
    position: relative;
    margin-bottom: 20px;
    max-width: 385px;
    width: 55%;
    color: #00bacf;
    font-weight: 300;
    font-style: normal;
    font-size: 40px;
    font-size: 2.5rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.15;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-str-ttl__name img {
    width: 100%;
}

.p-str-ttl__name span {
    display: block;
    color: #fff;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.08333;
}

.p-str-ttl__txtarea {
    overflow: hidden;
    padding: 0 0 36px;
    font-size: 0;
}

.p-str-ttl__num {
    display: inline-block;
    float: left;
    width: 60px;
    vertical-align: top;
}

.p-str-ttl__type {
    display: inline-block;
    float: left;
    width: calc(100% - 60px);
    vertical-align: top;
}

.p-str-ttl__ttl {
    position: relative;
    display: inline-block;
    float: left;
    width: calc(100% - 60px);
    vertical-align: top;
}

.p-str-ttl__ttl span {
    display: inline-block;
}

.p-str-ttl__ttl span:not(:first-child) {
    margin-left: -.25em;
}

.p-str-ttl__txt {
    position: relative;
    margin-bottom: 29px;
    font-style: normal;
    font-size: 15px;
    font-size: .9375rem;

    line-height: 2;
}

.p-str-nav {
    margin-top: 60px;
}

.p-str-nav__back {
    padding-top: 30px;
    border-top: solid 1px #bbb;
    text-align: right;
}

.p-str-nav__link {
    margin-top: 55px;
}

.p-str-nav__link a {
    display: block;
    color: #000;
    transition: .3s ease;
}

.p-str-nav__link .c-olst__txtarea {
    overflow: hidden;
    padding: 24px 0 55px;
    font-size: 0;
}

.p-str-nav__link .c-olst__num {
    display: inline-block;
    float: left;
    width: 60px;
    vertical-align: top;
}

.p-str-nav__link .c-olst__type {
    display: inline-block;
    float: left;
    width: calc(100% - 60px);
    vertical-align: top;
}

.p-str-nav__link .c-olst__ttl {
    display: inline-block;
    float: left;
    width: calc(100% - 60px);
    vertical-align: top;
}

.p-tech {
    padding-bottom: 68px;
}

.p-tech__header {
    padding: 40px 8.10811%;
    width: 93.6%;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
}

.p-tech__header p {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-tech__name {
    position: relative;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-family: "DINCond-Light", sans-serif;
}

.p-tech__body {
    padding: 40px 6.4% 0;
}

.p-tech__body--flex {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-tech__item {
    display: -ms-flexbox;
    display: flex;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-tech__item--reverse {
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
}

.p-tech__item + .p-tech__item {
    margin-top: 40px;
}

.p-tech__img {
    width: 100%;
}

.p-tech__img img {
    width: 100%;
}

.p-tech__txtarea {
    width: 100%;
}

.p-tech__txtarea > h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.33333;
}

.p-tech__entxt {
    padding: 10px 0;
    color: #00498d;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    font-size: 0.75rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1.875;
}

.p-tech__txt {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-tech__flow {
    width: 100%;
}

.p-tech__flow ol {
    counter-reset: tech;
}

.p-tech__flow ol li {
    position: relative;
    padding: 16px 3.96825% 16px calc(7.93651% + 28px);
    border: solid 1px #000;
    font-size: 16px;
    font-size: 0.75rem;
    line-height: 2;
}

.p-tech__flow ol li:before {
    position: absolute;
    top: 16px;
    left: 3.96825%;
    content: "0" counter(tech);
    counter-increment: tech;
    white-space: nowrap;
    letter-spacing: -.03em;
    font-weight: 500;
    font-style: normal;
    font-size: 30px;
    font-size: 1.875rem;
    font-family: "DINCond-Light", sans-serif;
    line-height: 1;
}

.p-tech__flow ol li:last-child:before {
    content: counter(tech);
}

.p-tech__flow ol li:not(:first-child) {
    margin-top: 49px;
}

.p-tech__flow ol li:not(:first-child):after {
    position: absolute;
    top: -37px;
    right: 0;
    left: 0;
    display: block;
    margin: auto;
    width: 1px;
    height: 25px;
    background-color: #000;
    content: "";
}

.p-tech__gallery {
    margin-top: 64px;
    padding-right: 6.4%;
    padding-left: 6.4%;
    width: 100%;
}

.p-tech__gallery ul {
    margin-top: -32px;
}

.p-tech-story {
    position: relative;
    margin-top: 60px;
    width: 93.6%;
    background-color: #000;
}

.p-tech-story__txtarea {
    padding: 60px 7.33945% 40px;
    width: 100%;
    background-color: #000;
}

.p-tech-story__img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 234px;
}

.p-tech-story a {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;

    -ms-flex-flow: column nowrap;

    flex-flow: column nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.p-tech-story img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
}

.p-works {
    padding-top: 60px;
}

.p-works-nav {
    margin-bottom: 48px;
}

.p-works-nav__lst {
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    width: 87.2%;

    -ms-flex-flow: row wrap;

    flex-flow: row wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.p-works-nav__item {
    position: relative;
    display: block;
    padding: 9px 0;
    width: 50%;
    border-top: solid 1px #000;
    border-left: solid 1px #000;
    color: #000;
    text-align: center;
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;
    transition: .3s ease;
}

.p-works-nav__item.is-active {
    color: #fff;
    pointer-events: none;
}

.p-works-nav__item.is-active:after {
    opacity: 1;
}

.p-works-nav__item.is-disabled {
    color: #bbb;
    pointer-events: none;
}

.p-works-nav__item:nth-child(4),
.p-works-nav__item:nth-child(5),
.p-works-nav__item:nth-child(6),
.p-works-nav__item:nth-child(7),
.p-works-nav__item:nth-child(8) {
    border-bottom: solid 1px #000;
}

.p-works-nav__item:nth-child(5),
.p-works-nav__item:nth-child(6),
.p-works-nav__item:nth-child(7),
.p-works-nav__item:nth-child(8) {
    margin-top: -1px;
}

.p-works-nav__item:nth-child(4n),
.p-works-nav__item:last-child {
    border-right: solid 1px #000;
}

.p-works-nav__item:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(90deg, #00498d 10%, #00bacf 50%, #00bacf 60%, #00498d);
    background-position: left center;
    background-size: 200% 100%;
    background-repeat: no-repeat;
    content: "";
    opacity: 0;
    transition: .3s ease;
}

.p-works-nav__item span {
    position: relative;
    z-index: 1;
    vertical-align: middle;
}

.p-works-index {
    position: relative;
    margin: 0 auto;
    padding: 0 0 58px;
    width: 87.2%;
}

.p-works-index__body {
    min-height: 292px;
}

.p-works-index__mask {
    position: absolute;
    top: 0;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -ms-transform-origin: right center;
    transform-origin: right center;

    -ms-flex-flow: row nowrap;

    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.p-works-index__mask .c-mask-wh,
.p-works-index__mask .c-mask-lgr {
    position: static;
}

.p-works-detail {
    margin: 0 auto;
    padding: 60px 6.4% 0;
    width: 100%;
}

.p-works-detail__disc {
    position: relative;
    margin-bottom: 28px;
    padding-bottom: 28px;
    border-bottom: solid 1px #bbb;
    text-align: right;
}

.p-works-detail__category {
    display: inline-block;
    margin-bottom: 16px;
    font-size: 0;
}

.p-works-detail__category li {
    display: inline-block;
    padding: 0 32px;
    border: solid 1px #000;
    text-align: center;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2.13333;
}

.p-works-detail__category li + li {
    margin: 8px 0 0 0;
}

.p-works-detail__type {
    color: #00498d;
    text-align: left;
    font-weight: 700;
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2.13333;
}

.p-works-detail__name {
    text-align: left;
    font-weight: 700;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.33333;
}

.p-works-detail__img {
    width: 100%;
}

.p-works-detail__img img {
    max-width: 100%;
    height: auto;
}

.p-works-detail__slider {
    width: 100%;
}

.p-works-detail__pager {
    padding-top: 10px;
    padding-right: 4%;
    width: 100%;
    font-size: 0;
}

.p-works-detail__pager li {
    display: inline-block;
    margin-right: 16px;
    width: 36px;
}

.p-works-detail__pager a {
    position: relative;
    display: block;
    padding: 10px 0 11px;
    width: 100%;
}

.p-works-detail__pager a:before {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ccc;
    content: "";
}

.p-works-detail__pager a:after {
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #00bacf;
    content: "";
    transition: .3s cubic-bezier(.645, .045, .355, 1);
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.p-works-detail__pager a.active:after {
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

.p-works-detail__body {
    padding: 12px 0 52px;
    width: 100%;
}

.p-works-detail__upper {
    width: 100%;
}

.p-works-detail__lower {
    position: relative;
    padding: 16px 0 0;
    width: 100%;
    border-top: solid 1px #bbb;
    text-align: right;
}

.p-works-detail__txt {
    margin-bottom: 26px;
    width: 100%;
}

.p-works-detail__txt p {
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;
}

.p-works-detail__txt p + p {
    margin-top: 15px;
}

.p-works-detail__data {
    margin-bottom: 26px;
    padding-top: 26px;
    width: 100%;
    border-top: solid 1px #bbb;
}

.p-works-detail__data .c-hdl4 {
    margin-bottom: 14px;
    width: 31.34328%;
}

.p-works-detail__data dl {
    width: 100%;
}

.u-cl-red {
    color: #f00 !important;
}

.u-cl-wh {
    color: #fff !important;
}

.u-cl-bk {
    color: #000 !important;
}

.u-cl-alpha {
    color: transparent !important;
}

.u-h146 {
    height: 146px !important;
}

.u-mt0 {
    margin-top: 0 !important;
}

.u-mt12 {
    margin-top: 12px !important;
}

.u-mt24 {
    margin-top: 24px !important;
}

.u-mt30 {
    margin-top: 30px;
}

.u-mt36 {
    margin-top: 36px;
}

.u-mt50 {
    margin-top: 50px;
}

.u-mt60 {
    margin-top: 60px;
}

.u-mt64 {
    margin-top: 64px;
}

.u-mt80 {
    margin-top: 80px;
}

.u-mt120 {
    margin-top: 120px !important;
}

.u-mt-36 {
    margin-top: -36px;
}

.u-mb0 {
    margin-bottom: 0 !important;
}

.u-mb4 {
    margin-bottom: 4px;
}

.u-mb12 {
    margin-bottom: 12px;
}

.u-mb20 {
    margin-bottom: 20px;
}

.u-mb24 {
    margin-bottom: 24px;
}

.u-mb26 {
    margin-bottom: 26px;
}

.u-mb30 {
    margin-bottom: 30px;
}

.u-mb32 {
    margin-bottom: 32px;
}

.u-mb50 {
    margin-bottom: 50px;
}

.u-mb60 {
    margin-bottom: 60px;
}

.u-mb110 {
    margin-bottom: 110px;
}

.u-ml-kerm {
    margin-left: .5em;
}

.u-pb-btn {
    padding-bottom: 60px;
}

.u-pt00 {
    padding-top: 0 !important;
}

.u-pb28 {
    padding-bottom: 28px;
}

.u-pb77 {
    padding-bottom: 77px !important;
}

.u-pb112 {
    padding-bottom: 112px !important;
}

.u-pb120 {
    padding-bottom: 120px;
}

.u-pb-content {
    padding-bottom: 30px;
}

.u-pl-indent {
    padding-left: 1em;
}

.u-pl-indent--ib {
    display: inline-block;
    padding-left: 1em;
}

.u-pl-indent2 {
    padding-left: 2em;
}

.u-pr16 {
    padding-right: 16px;
}

.u-indent {
    text-indent: 1em;
}

.u-bold {
    font-weight: 700;
}

.u-ta-l {
    text-align: left;
}

.u-ta-c {
    text-align: center;
}

.u-ta-r {
    text-align: right;
}

/* PC or SP
------------------------------ */
.is-pc {
    display: none !important;
}

.is-sp {
    display: block !important;
}

br.is-pc,
span.is-pc {
    display: none !important;
}

br.is-sp,
span.is-sp {
    display: inline !important;
}

.tel a {
    color: currentColor;
    letter-spacing: 0;
}

.tel a:hover,
.tel a:visited,
.tel a:focus {
    color: #00498d;

}

.u-w-auto {
    width: auto !important;
}

.u-alpha10 {
    opacity: 1;
}

.u-alpha4 {
    opacity: .4;
}

@media screen {
    [hidden~="screen"] {
        display: inherit;
    }

    [hidden~="screen"]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important;
    }
}

@media screen and (min-width: 993px) {
    body {
        font-size: 15px;
        font-size: .75rem;
        line-height: 2;
    }

    .pro-list li {
        width: 23%;
        position: relative;
        text-align: center;
    }

    .pro_show {
        padding: 0;
    }

    .pro-left {
        width: 240px;
        float: left;
        margin-left: 7.14286%;
    }

    .pro-right-content {

        width: 48%;

    }

    .pro-left-content {

        width: 48%;

    }

    .pro-left li a {
        padding: 10px 20px;
        background-color: #f6f6f6;
    }

    .pro-left li.hover a {
        background-color: #00498d;
        color: #fff;
    }

    .pro-left .search {
        margin: 30px 0;
    }

    .pro-left .search input {
        border: 1px solid #eee;
        padding: 0 10px;
    }

    .pro-left .search .am-form-field {
        position: relative;
        z-index: 2;
        float: left;
        height: 38px;
        width: 100%;
        margin-bottom: 0;
        display: table-cell;
    }

    .am-input-group {
        position: relative;
        display: table;
        border-collapse: separate;
        box-sizing: border-box;
        width: 100%;
        padding: 0;
    }

    .pro-left .search .am-input-group-btn {
        width: 50px;
        transition: all .5s;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 2;
        font-size: 0;
        white-space: nowrap;
        display: table-cell;
    }

    .pro-left .search .am-input-group-btn .am-btn {
        height: 38px;
        background-color: #00bacf;
        color: #fff;
        margin-left: -1px;
        z-index: 2;
        display: inline-block;
        margin-bottom: 0;
        padding: 5px 10px;
        vertical-align: middle;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.2;
        text-align: center;
        white-space: nowrap;
        background-image: none;
        border-radius: 0;
        cursor: pointer;
        outline: 0;
        -webkit-appearance: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-transition: background-color .3s ease-out, border-color .3s ease-out;
        transition: background-color .3s ease-out, border-color .3s ease-out;
    }

    .pro-left .search .am-input-group-btn > .am-btn:hover {
        background-color: #00498d;
        border-color: #00498d;
    }

    .pro-right {
        float: right;
        width: 64.28571%;
        margin-right: 7.14286%;
        padding: 3.42857%;
    }

    .pro-right .product-list li {
        width: calc((100% - 30px) / 4);
        float: left;
        margin-right: 10px;
        margin-bottom: 10px;
    }

    .pro-right .product-list li:nth-child(4n) {
        margin-right: 0;
    }

    .l-breadcrumb {
        padding: 24px 100px 8px;
    }

    .l-breadcrumb a:hover span[property="name"] {
        text-decoration: none;
    }

    .l-breadcrumb--white {
        margin-top: -62px;
    }

    .l-breadcrumb--white {
        color: #fff;
    }

    .l-breadcrumb--white span[property="name"] {
        color: #fff;
    }

    .l-col2 {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .l-col2 > div {
        width: 50%;
    }

    .l-col2 .c-olst__img {
        margin-left: 0;
        width: 50%;
    }

    .l-col2 .c-olst__txtarea {
        margin-top: 0;
        padding: 0 2% 0 4%;
    }

    .l-col2--reverse {
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
    }

    .l-col2--reverse .c-olst__txtarea {
        padding: 0 6% 0 0;
    }

    .l-contact {
        padding: 120px 7.14286% 5px;
    }

    .l-contact--product {
        padding-bottom: 108px;
    }

    .l-contact--tech {
        padding-bottom: 120px;
    }

    .l-contact__body {
        margin: 0 auto;
        padding: 45px 25%;
    }

    .l-contact__body--col3 {
        padding: 45px 12.5%;
    }

    .l-contact__body--col3 .l-contact__tel dl {
        width: calc(100% / 3);
    }

    .l-contact__body--col3 .l-contact__btn {
        margin-right: auto;
        margin-left: auto;
        width: 66.66667%;
    }

    .l-contact__txt {
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 1.3;
    }

    .l-contact__tel {
        margin-top: 28px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: stretch;
    }

    .l-contact__tel dl {
        padding: 8px;
        width: 50%;
    }

    .l-contact__tel dl:before {
        bottom: 0;
        left: -1px;
        margin: auto;
        width: 1px;
        height: 54px;
    }

    .l-contact__tel dl:nth-child(2):before {
        left: 0;
    }

    .l-contact__tel dl:last-child:after {
        top: 0;
        right: -2px;
        bottom: 0;
        left: auto;
        margin: auto;
        width: 1px;
        height: 54px;
    }

    .l-contact__tel--col1 dl {
        width: 100%;
    }

    .l-contact__btn {
        margin-top: 40px;
    }

    .l-content__ttl {
        padding-top: 164px;
        padding-left: 7.69231%;
        width: 92.85714%;
        height: 380px;
    }

    .l-content__ttl--tech {
        padding-right: 7.69231%;
        padding-bottom: 0;
        height: 550px !important;
    }

    .l-content__ttl--tech h2 {
        font-size: 52px;
        font-size: 3.25rem;
        line-height: 1.15385;
    }

    .l-content__ttl--tech h2 span {
        top: 19px;
        margin: auto;
    }

    .l-content__ttl--tech p {
        margin-bottom: 10px !important;
    }

    .l-content__accent {
        margin-top: -80px;
        margin-left: 28.57143%;
        width: 71.42857%;
        height: 160px;
    }

    .l-content__topicks {
        margin-top: -80px;
        margin-left: 7.14286%;
        width: 92.85714%;
    }

    .l-content__lead {
        margin-left: 28.57143%;
        padding: 77px 3.42857% 80px;
        width: 64.28571%;
    }

    .l-content__lead p,
    .l-content__lead li {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2;
    }

    .l-content__body--txt {
        margin-bottom: 108px;
    }

    .l-content__link a:hover .c-btn {
        background-color: #fff;
        color: #000;
    }

    .l-content__link a:hover .c-btn-line {
        background-color: #000;
        animation: btnline .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .l-content__link a:hover .c-btn-line:before {
        background-color: #000;
    }

    .l-content__link p {
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 1.3;
    }

    .l-content__link .c-btn {
        margin: 24px auto 0;
        width: 42.85714%;
        font-size: 16px;
        font-size: 0.75rem;
        line-height: 1.625;
    }

    .l-content__link--product {
        margin-top: 60px;
    }

    .l-content__link--plan {
        margin-top: 120px;
    }

    .l-content__link--co {
        margin-top: 120px;
        margin-bottom: 108px;
    }

    .l-content__link--co a {
        padding: 65px 7.14286%;
        height: auto;
    }

    .l-content__link--co a:hover .c-btn {
        background-color: #fff;
        color: #000;
    }

    .l-footer {
        padding: 90px 7.14286% 0;
    }

    .l-footer__ttl {
        margin-bottom: 65px;
    }

    .l-footer__ttl a {
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .l-footer__ttl a span {
        font-size: 36px;
        color: #e7e7e7;
        font-weight: bold;
    }

    .l-footer__ttl span {
        font-size: 14px;
        font-size: 0.65625rem;
        line-height: 1;
    }

    .l-footer__info {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .l-footer__sitemap {
        width: 75%;
    }

    .l-footer__sitemap a {
        position: relative;
        transition: .3s ease;
    }

    .l-footer__sitemap a:hover {
        color: #00bacf;
    }

    .l-footer__link {
        width: 25%;
    }

    .l-footer__bnr {
        display: block;
    }

    .l-footer__bnr a:hover .c-btn-line {
        animation: btnline .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .l-footer__bnr a:hover .c-mask-alpbk {
        opacity: 0;
    }

    .l-footer__contact {
        text-align: left;
    }

    .l-footer__misc {
        overflow: hidden;
        text-align: left;
    }

    .l-footer__misc ul {
        float: left;
    }

    .l-footer__misc ul:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .l-footer__misc ul li + li {
        margin-left: 20px;
    }

    .l-footer__misc ul a:hover {
        color: #00498d;
    }

    .l-footer__copyright {
        float: right;
        margin-top: 0;
    }

    .l-footer__copyright:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .l-sitemap {
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 0;
        height: 365px;
        -ms-flex-flow: column wrap;
        flex-flow: column wrap;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .l-sitemap__item {
        width: 20%;
    }

    .l-footer--en .l-sitemap__company {
        margin-bottom: 50px;
    }

    .l-header__ttl {
        z-index: 91;
        display: flex;
        align-items: center;
        height: 100px;
        margin: 0 2.28571%;
        width: 15%;
    }

    .l-menu__name {
        top: 0;
        right: 3.21429%;
        bottom: 0;
        margin: auto;
    }

    .l-menu__item--thumb > a:hover .c-mask-alpbk {
        opacity: 0.6;
    }

    .l-gnav {
        position: absolute;
        display: block;
    }

    .l-gnav__item a:hover:after {
        opacity: 1;
    }

    .l-gnav__item {
        width: 16.52%;
    }

    .l-gnav__item.l-gnav__item--contact {
        width: 10%;
    }

    .l-gnav__item--lang {
        box-sizing: content-box;
        width: 7.4%;
        text-align: center;
    }

    .l-header--en .l-gnav__item--lang {
        padding-right: 0;
        width: 9.4%;
    }

    .l-gnav__item--lang a {
        line-height: 1;
        -ms-flex-flow: column wrap;
        flex-flow: column wrap;
    }

    .l-gnav__item--lang a:hover .en {
        opacity: 1;
    }

    .l-gnav__item--lang a:hover .jp {
        opacity: .2;
    }

    .l-toggle {
        display: none;
        width: 7.14286%;
        height: 120px;
    }

    .l-toggle > span {
        top: 59px;
        width: 50px;
        height: 2px;
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
    }

    .l-page:after {
        right: 7.14286%;
        left: auto;
        width: 64.28571%;
    }

    .l-page__line {
        display: block;
    }

    .l-page__line--item1 {
        left: 7.14286%;
    }

    .l-page__line--item2 {
        left: 28.57143%;
    }

    .l-page__line--item3 {
        left: 50%;
    }

    .l-page__line--item4 {
        left: 71.42857%;
    }

    .l-page__line--item5 {
        left: 92.85714%;
    }

    .l-anchor {
        display: block;
    }

    .l-topsection {
        padding: 0 7.14286%;
    }

    .l-topsection__header {
        padding-bottom: 15px;
        height: 120px;
    }

    .l-topsection__ttl,
    .l-topsubsection__ttl {
        display: inline-block;
        margin-top: 26px;
        padding-left: 0;
        font-size: 36px;
        font-size: 2.25rem;
        line-height: 1.61111;
    }

    .l-topsection__ttl span,
    .l-topsubsection__ttl span {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 1.66667;
    }

    .l-topsection__more {
        position: absolute !important;
        right: 0;
        bottom: 0;
        padding: 22px 0 !important;
    }

    .l-topsubsection {
        padding: 0 7.14286%;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .l-topsubsection__header {
        margin-left: -8.33333%;
        padding-top: 80px;
        padding-bottom: 0;
        padding-left: 8.33333%;
        width: 33.33333%;
    }

    .l-topsubsection__body {
        margin-right: -8.33333%;
        width: 83.33333%;
    }

    .l-section,
    .l-subsection {
        padding: 0 7.14286%;
    }

    .l-section--txt,
    .l-subsection--txt {
        margin-left: 28.57143%;
        padding: 80px 3.42857% 0;
        width: 64.28571%;
    }

    .l-section--txt a:hover,
    .l-subsection--txt a:hover {
        text-decoration: none;
    }

    .l-section--gray {
        margin-right: auto;
        margin-left: 28.57143%;
        padding: 0 !important;
        width: 64.28571%;
    }

    .l-section__header {
        margin-left: -8.33333%;
        padding: 80px 8.33333% 85px;
        width: 83.33333%;
    }

    .l-section__body--txt {
        margin-left: 25%;
        padding: 64px 4% 0;
        width: 75%;
    }

    .l-section__img {
        width: 68.65672%;
    }

    .l-section + .l-section,
    .l-subsection + .l-section,
    .l-section + .l-subsection,
    .l-subsection + .l-subsection {
        margin-top: 120px;
    }

    .l-subsection--txt {
        padding: 74px 3.42857% 0;
    }

    .l-topicks {
        padding: 128px 0 48px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .l-topicks__header {
        padding: 0 3.69231%;
        width: 23.07692%;
    }

    .l-topicks__body {
        padding-left: 3.69231%;
        width: 69.23077%;
    }

    .l-topicks__name {
        display: block;
    }

    .c-btn {
        transition: .3s ease;
    }

    .c-btn:hover {
        border-color: #000;
        background-color: #000;
        color: #fff;
    }

    .c-btn:hover .c-btn-line {
        animation: btnline .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .c-btn--whalp {
        transition: .3s ease;
    }

    .c-btn--whalp:hover {
        border-color: #fff;
        background-color: #fff;
        color: #000;
    }

    .c-btn--gralp {
        transition: .3s ease;
    }

    .c-btn--gralp:hover {
        border-color: #000;
        background-color: #000;
        color: #fff;
    }

    .c-btn:hover .c-btn-line:before,
    .c-btn-plane:hover .c-btn-line:before,
    .c-btn-plane--bk:hover .c-btn-line:before,
    .l-footer__catalog a:hover .c-btn-line:before,
    .l-content__link a:hover .c-btn-line:before,
    .l-content__link--co a:hover .c-btn-line:before {
        opacity: 1;
        -ms-transform: rotate(30deg);
        transform: rotate(30deg);
    }

    .c-btn-plane:hover,
    .c-btn-plane--bk:hover {
        background-position: right center;
    }

    .c-btn-plane,
    .c-btn-plane--bk {
        padding: 17px 13%;
        transition: background-position .6s ease;
    }

    .c-btn-plane:hover .c-btn-line,
    .c-btn-plane--bk:hover .c-btn-line {
        animation: btnline .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .c-btn-back:hover:after {
        opacity: 0;
    }

    .c-flow__item {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .c-flow__item > div {
        padding: 26px 4.22222%;
    }

    .c-flow__name {
        width: 31.46766%;
    }

    .c-flow__detail {
        width: 68.53234%;
        border-top: solid 1px #000;
        border-left: none;
    }

    .c-form > p {
        font-size: 14px;
        font-size: .75rem;
        line-height: 2;
    }

    .c-form > p > input,
    .c-form > p > textarea {
        font-size: 15px;
        font-size: .75rem;
        line-height: 2;
    }

    .c-form .selectbox {
        white-space: nowrap;
    }

    .c-form .selectbox:after {
        bottom: 20px;
        left: 87.56219%;
    }

    .c-form .pref select {
        padding: 2px 16px;
        width: 31.46766%;
        font-size: .75rem;
    }

    .c-form .pref:after {
        top: 56px;
        right: auto;
        left: calc(31.46766% - 30px);
    }

    .c-form .month,
    .c-form .day {
        margin-right: .99502%;
        margin-left: 2.98507%;
        padding: 2px 16px;
        width: 31.46766%;
    }

    .c-form input:not([type="submit"]),
    .c-form textarea {
        padding: 2px 16px;
    }

    .c-form input.inline.year,
    .c-form input.inline[id^="bdyear"],
    .c-form input.inline[id^="abyear"],
    .c-form input.inline[id^="weyear"] {
        width: 18.65672%;
    }

    .c-form input.inline.month {
        width: 12.43781%;
    }

    .c-form input.inline.p-postal-code {
        width: 31.46766%;
    }

    .c-form input.inline.tel,
    .c-form input.inline#emergency {
        width: 68.90547%;
    }

    .c-form select.month,
    .c-form select.day {
        width: 12.43781%;
    }

    .c-form .abschool {
        margin-top: 0;
        margin-left: 2.98507% !important;
        width: 41.04478%;
    }

    .c-form input[type="radio"] + .radio:after {
        top: 6px;
    }

    .c-form .c-btn {
        width: 37.31343%;
    }

    .c-form__btn {
        margin: 64px auto 0;
        width: 37.31343%;
    }

    .c-hd-style {
        text-align: left;
    }

    .c-hd-style__ttl {
        font-size: 32px;
        font-size: 2rem;
        line-height: 1.5;
    }

    .c-hd-style__name {
        font-size: 80px;
        font-size: 5rem;
        line-height: 1;
    }

    .l-page--en .c-hd-style__name {
        font-size: 64px;
        font-size: 4rem;
        line-height: 1;
    }

    .c-hd-style__copy {
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.5;
    }

    .c-hdl2 {
        font-size: 36px;
        font-size: 2.25rem;
        line-height: 1.08333;
    }

    .c-hdl2 span:not([class]) {
        margin-top: 14px;
        font-size: 15px;
        font-size: .9375rem;
        line-height: 1.66667;
    }

    .c-hdl3 a:hover,
    .c-hdl3--bk a:hover,
    .p-pro-kind__item .c-olst__name a:hover,
    .p-co-info__name a:hover,
    .p-news-detail__body h2 a:hover,
    .p-news-detail__body h3 a:hover,
    .p-news-detail__body h4 a:hover {
        color: #000;
    }

    .c-hdl4 {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.5;
    }

    .c-img {
        width: 68.65672%;
    }

    .c-img--over {
        margin-left: -5.97015%;
        width: 111.9403%;
    }

    .c-img--full {
        width: 100%;
    }

    .c-img--sm {
        width: 31.34328%;
    }

    .c-img-box {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .c-img-box .c-img {
        width: 31.34328%;
    }

    .c-img-box--col2 {
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .c-img-box--col2 .c-img {
        width: 44.02985%;
    }

    .c-img-box--col2 .c-img:nth-child(2n) {
        margin-left: 5.97015%;
    }

    .c-olst__num {
        font-size: 72px;
        font-size: 4.5rem;
        line-height: 1.11111;
    }

    .c-olst__txt {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2;
    }

    .c-olst__sup {
        margin-top: 5px;
    }

    .c-blst {
        padding: 68px 48px 0;
    }

    .c-blst__name {
        top: 20px;
        right: 45px;
        font-size: 14px;
    }

    .c-ullst a:hover {
        box-shadow: 0 -1px 0 0 transparent inset;
        color: #00498d;
    }

    .c-thlst {
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .c-thlst li {
        padding-bottom: 2%;
    }

    .c-thlst--col3 .c-thlst__item {
        width: 33.3333%;
    }

    .c-thlst--txt .c-thlst__item {
        padding: 0 5.97015% 40px 0;
        width: 37.31343%;
        margin-bottom: 30px;
    }

    .c-thlst--txt .c-thlst__item--btn .c-btn {
        width: 84%;
    }

    .c-thlst__item {
        margin-bottom: 50px;
        padding: 0 2.5% 0 0;
        width: 25%;
    }

    .c-thlst__item--btn {
        padding-bottom: 42px;
    }

    .c-thlst__item--btn .c-btn {
        left: 0;
        width: 90%;
    }

    .c-thlst__item > a:not(.c-btn):hover {
        opacity: .8;
    }

    .c-dllst .dl {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .c-dllst .dt {
        padding-bottom: 4px;
        width: 31.34328%;
        float: left;
    }

    .c-dllst .dd {
        padding-top: 24px;
        width: 68.65672%;
        float: right;
    }

    .c-dllst a:hover {
        text-decoration: none;
    }

    .c-dllst--col3 li {
        display: -ms-flexbox;
        display: flex;
        padding-top: 0;
    }

    .c-dllst--col3 .dt {
        float: left;
        padding-top: 24px;
        padding-right: 0;
        width: 31.34328%;
    }

    .c-dllst--col3 .dd {
        float: right;
        width: 37.31343%;
    }

    .c-dllst--col3 .dd {
        width: 31.34328%;
    }

    .c-pllst li a {
        transition: .3s ease;
    }

    .c-pllst li a:hover {
        color: #000;
    }

    .c-tgllst__item.is-disabled .c-tgllst__header p:after {
        display: inline;
        margin-left: 2em;
        font-size: 13px;
        font-size: .8125rem;
        line-height: 2.30769;
    }

    .c-tgllst__header {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2;
    }

    .c-tgllst__header a:hover {
        background-color: #000;
        color: #fff;
    }

    .c-tgllst__header a:hover .c-tgllst__toggle > div:before,
    .c-tgllst__header a:hover .c-tgllst__toggle > div:after {
        background-color: #fff;
    }

    .c-tgllst__body {
        padding: 0 2.98507% 24px;
    }

    dl.c-dtlst dt {
        width: 120px;
    }

    dl.c-dtlst dd {
        width: calc(100% - 120px);
    }

    .c-fllst li p {
        float: left;
        width: 68.65672%;
    }

    .c-fllst li p:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .c-fllst li .c-btn {
        float: right;
        width: 31.34328%;
    }

    .c-fllst li .c-btn:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .c-fllst li .c-btn:hover {
        color: #fff;
    }

    .c-imglst li {
        width: 23.13433%;
    }

    .c-imglst--col3 li {
        width: 31.34328%;
    }

    .c-table-wrap--fix .c-table--col3 .c-table__col {
        min-width: 300px;
    }

    .c-table-wrap--fix .c-table--col3 .c-table__th {
        width: 31.34328%;
    }

    .c-table-wrap--fix .c-table--col4 .c-table__col {
        min-width: 300px;
    }

    .c-table-wrap {
        overflow-x: auto;
        padding-bottom: 0;
    }

    .c-table-wrap--fix {
        padding-bottom: 25px;
    }

    .c-tbl-slider {
        margin-right: -5.97015%;
        padding-top: 0;
    }

    .c-tbl-slider__head {
        width: 29.57746%;
    }

    .c-tbl-slider__body {
        padding-right: 35.21127%;
        width: 70.42254%;
    }

    .c-tbl-slider__common {
        width: 200%;
    }

    .c-tbl-slider__col {
        padding-top: 24px;
    }

    .c-tbl-slider__head .c-tbl-slider__col--line p {
        padding-bottom: 30px;
    }

    .c-tbl-slider__body .c-tbl-slider__col--line {
        padding-top: 54px;
    }

    .c-tbl-slider__col--l2 p {
        padding-bottom: 60px;
    }

    .c-tbl-slider__col--l3 p {
        padding-bottom: 90px;
    }

    .c-tbl-slider__col--l4 p {
        padding-bottom: 120px;
    }

    .c-tbl-slider__col--l5 p {
        padding-bottom: 150px;
    }

    .c-tbl-slider__col--l6 p {
        padding-bottom: 180px;
    }

    .c-tbl-slider__controls {
        top: auto;
        right: 5.6338%;
        bottom: 100%;
        left: auto;
        text-align: right;
    }

    .p-mv {
        padding-bottom: 100px;
    }

    .p-mv__main {
        width: 92.85714%;
        height: auto;
    }

    .p-mv__main video,
    .p-mv__main img {
        position: static;
        left: auto;
        width: 100%;
        height: auto;
        vertical-align: top;
        -ms-transform: none;
        transform: none;
    }

    .p-mv__txtarea {
        left: 7.69231%;
        padding: 0;
        width: auto;
        height: 195px;
    }

    .p-mv__type {
        font-size: 28px;
        font-size: 1.75rem;
        line-height: 1.5;
    }

    .p-mv__ttl {
        font-size: 50px;
        font-size: 3.25rem;
        line-height: 1.5;
    }

    .p-mv__txt {
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 1.5;
    }

    .p-mv__sound a:hover {
        color: #00498d;
    }

    .p-mv__sound a:hover:after {
        background-color: #00498d;
        transition-delay: .25s;
        animation: btnline .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .p-mv__accent {
        position: absolute;
        top: auto;
        right: 0;
        bottom: 0;
        padding-top: 0;
        width: 50%;
        height: 380px;
    }

    .p-mv__vbtn {
        margin-top: 310px;
       display: inline-block;
        width: 36.14286%;
    }

    #top-content {
        padding-bottom: 80px;
    }

    .p-topproduct {
        overflow: visible;
    }

    .p-topproduct__bg {
        position: static;
        top: auto;
        right: auto;
        width: 108.33333%;
    }

    .p-topproduct__contents {
        position: absolute;
        top: 0;
        left: 0;
        padding-top: 15%;
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-topproduct__lst {
        padding-bottom: 128px;
        width: 75%;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -ms-flex-pack: end;
    }

    .p-topproduct__item {
        padding-right: 5%;
        padding-bottom: 68px;
        padding-left: 5%;
        width: 33.333%;
    }

    .p-topproduct__item li a {
        transition: .3s ease;
    }

    .p-topproduct__item li a:hover {
        color: #00bacf;
    }

    .p-topproduct__item .c-blst__name {
        right: 15%;
    }

    .p-topproduct__btn {
        left: 15%;
        width: 70%;
    }

    .p-topproduct__search {
        z-index: 10;
        display: inline-block;
        float: none;
        margin-top: 0;
        margin-right: 0;
        padding-right: 4%;
        padding-left: 4%;
        width: 25%;
    }

    .p-topproduct__search .c-ullst__item {
        float: left;
    }

    .p-topproduct__search .c-ullst__item a {
        box-shadow: 0 -1px 0 0 rgba(255, 255, 255, .5) inset;
        color: #fff;
    }

    .p-topproduct__search .c-ullst__item a:hover {
        box-shadow: 0 -1px 0 0 #00bacf inset;
        color: #00bacf;
    }

    .p-topproduct__search .c-ullst__item a:after {
        background-color: #fff;
    }

    .p-topproduct__more {
        margin-top: 0;
        width: 33.333%;
    }

    #top-technology {
        margin-top: 80px;
    }

    .p-toptechnology__body {
        margin-left: -8.33333%;
        padding-top: 70px;
        padding-bottom: 90px;
        padding-left: 8.33333%;
        width: 108.33333%;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .p-toptechnology__txtarea {
        margin-bottom: 0;
        padding: 0;
        width: 25%;
    }

    .p-toptechnology__ttl,
    .p-co-style__ttl,
    .p-tech-story__ttl {
        font-size: 52px;
        font-size: 3.25rem;
        line-height: 1.15385;
    }

    .p-toptechnology__ttl span,
    .p-co-style__ttl span,
    .p-tech-story__ttl span {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.5;
    }

    .p-toptechnology__txt,
    .p-co-style__txt,
    .p-tech-story__txt {
        margin-bottom: 45px;
    }

    .p-toptechnology__btn,
    .p-co-style__btn,
    .p-tech-story__btn {
        max-width: 205px;
    }

    .p-toptechnology__lst {
        width: 75%;
        font-size: 0;
    }

    .p-toptechnology__item {
        display: inline-block;
        padding-left: 3.66667%;
        width: 33.33333%;
        height: 100%;
        margin-bottom: 40px;
        vertical-align: top;
    }

    .p-toptechnology__item .c-olst__type:after {
        left: 20px;
    }

    .p-toptechnology__item p {
        padding: 0 20px;
    }

    .p-toptechnology__item a:hover .c-olst__num,
    .p-toptechnology__item a:hover .c-olst__ttl {
        color: #00bacf;
    }

    .p-toptechnology__item a:hover .c-mask-stripe {
        opacity: 0;
    }

    .p-toptechnology__item--item1 {
        margin-top: 0px;
    }

    .p-toptechnology__item--item2 {
        margin-top: 0px;
        margin-left: 0;
    }

    .p-toptechnology__item--item3 {
        margin-top: 0;
        margin-left: 0;
    }

    .p-toptechnology__more {
        margin-top: 0;
        width: 23.07692%;
    }

    #top-works {
        margin-top: 80px;
    }

    .p-topworks__body {
        padding-bottom: 110px;
    }

    .p-topworks__bg {
        top: 0;
        left: 25%;
        width: 83.33333%;
        height: 100%;
    }

    .p-topworks__lst {
        width: 108.33333%;
        font-size: 0;
    }

    .p-topworks__item {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: top;
    }

    .p-topworks__item a:hover .c-olst__num {
        color: #00498d;
    }

    .p-topworks__item a:hover .c-mask-stripe {
        opacity: 0;
    }

    .p-topworks__item .c-olst__txtarea {
        display: inline-block;
        margin-top: 0;
    }

    .p-topworks__item--item1 {
        overflow: visible;
        width: 46.15385%;
    }

    .p-topworks__item--item1 a {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .p-topworks__item--item1 .c-olst__img {
        position: absolute;
        top: 0;
        left: 0;
        width: 50%;
    }

    .p-topworks__item--item1 .c-olst__txtarea {
        margin-top: 60px;
        margin-left: 50%;
        padding: 0 5.5%;
        width: 50%;
    }

    .p-topworks__item--item2 {
        margin-top: -70px;
        margin-left: 0;
        width: 53.84615%;
    }

    .p-topworks__item--item2 .c-olst__txtarea {
        margin-top: 24px;
        padding-right: 14.28571%;
    }

    .p-topworks__item--item3 {
        overflow: hidden;
        margin-top: 70px;
        margin-left: 23.07692%;
        width: 69.23077%;
    }

    .p-topworks__item--item3 .c-olst__txtarea {
        margin-left: 0;
        padding: 0 3.66667%;
        width: 33.33333%;
        text-align: right;
    }

    .p-topworks__item--item3 .c-olst__img {
        float: right;
        width: 66.66667%;
        height: auto;
    }

    .p-topworks__item--item3 .c-olst__img:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .p-topworks__item--item3 .c-olst__type:after {
        right: 0;
        left: auto;
    }

    .p-topworks__more {
        margin-left: 0;
        width: 25%;
    }

    #top-about {
        margin-top: 35px;
    }

    .p-topabout__body {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .p-topabout__img {
        margin-left: -8.33333%;
        padding: 68px 0 276px;
        width: 58.33333%;
        background-image: url('/theme/default/images/top_about01.jpg');
    }

    .p-topabout__info {
        margin-right: 0;
        margin-left: 14.28571%;
        padding: 45px 6.42857%;
        width: 42.85714%;
    }

    .p-topabout__info .c-blst__name {
        top: 48px;
        right: 15%;
    }

    .p-topabout__maparea {
        width: 50%;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    }

    .p-topabout__mapinfo {
        padding-right: 7.5%;
        padding-left: 7.5%;
        width: 50%;
    }

    .p-topabout__map {
        width: 50%;
        height: auto;
        background-image: url('/theme/default/images/top_map.jpg');
    }

    .p-topabout__map--en {
        background-image: url('/theme/default/images/top_map.png');
    }

    .p-topabout__more {
        width: 25%;
    }

    #top-news {
        padding-top: 80px;
    }

    .p-topnews__body {
        padding: 117px 0 140px;
        width: 100%;
    }

    .p-topnews__lst {
        padding: 0 6%;
        width: 90%;
    }

    .p-topnews__item a {
        padding: 24px 0;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-topnews__item a:hover {
        background-color: #000;
    }

    .p-topnews__item a:hover .p-topnews__date,
    .p-topnews__item a:hover .p-topnews__ttl {
        color: #fff;
    }

    .p-topnews__date {
        padding: 0 25px;
        width: calc(100% / 3);
    }

    .p-topnews__ttl {
        padding: 0 13px;
        width: calc((100% / 3) * 2);
    }

    .p-topnews__more {
        right: 10%;
        width: 30%;
    }

    .p-co-img,
    .p-about-img,
    .p-glo-img {
        margin: 0 -5.88889% 50px;
        padding-top: 40px;
        width: 111.9403%;
    }

    .p-co-style {
        margin-top: 120px;
        width: 92.85714%;
        height: 590px;
    }

    .p-co-style__txtarea {
        padding: 76px 0 0 7.69231%;
        width: 30.76923%;
    }

    .p-co-style__img {
        width: 69.23077%;
        height: auto;
    }

    .p-co-style .about-a {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-co-style a:hover .p-co-style__btn {
        border-color: #fff;
        background-color: #fff;
        color: #000;
    }

    .p-co-lst {
        margin: 0 auto;
        padding: 43px 0 0;
        width: 85.71429%;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-co-lst__item {
        position: relative;

    }

    .about-list {
        padding-left: 0;
        padding-right: 0;
    }

    .about-list li {
        width: 33.333%;
        padding: 40px;

    }


    .p-co-lst__btn {
        margin: 30px 0;
        width: 50%;
    }

    .p-customer,
    .p-pl-result {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-customer__item,
    .p-pl-result__item {
        margin-bottom: 0;
    }

    .p-customer__item--item1,
    .p-pl-result__item--item1 {
        padding-right: 5.97015%;
        width: 31.34328%;
    }

    .p-customer__item--item2,
    .p-pl-result__item--item2 {
        padding-right: 5.97015%;
        padding-left: 5.97015%;
        width: 37.31343%;
    }

    .p-customer__item--item3,
    .p-pl-result__item--item3 {
        padding-left: 5.97015%;
        width: 31.34328%;
    }

    .p-customer__txt,
    .p-pl-result__txt {
        margin-top: 40px;
    }




    .p-ds-section__body {
        padding: 0 100px;
    }

    .p-ds-section__body--section {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .l-page--en .p-ds-section__body--section {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-ds-section__body--reverse {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-ds-section__body--reverse .p-ds-section__ttlarea {
        padding-left: 70px;
    }

    .l-page--en .p-ds-section__body--reverse .p-ds-section__ttlarea {
        padding-left: 0;
    }

    .l-page--en .p-ds-section__body--reverse {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: column nowrap;
        flex-flow: column nowrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-ds-section__ttlarea {
        display: -ms-flexbox;
        display: flex;
        width: 50%;
        -ms-flex-flow: column wrap;
        flex-flow: column wrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .l-page--en .p-ds-section__ttlarea {
        margin-bottom: 32px;
        width: 100%;
    }

    .p-ds-section__txtarea {
        display: -ms-flexbox;
        display: flex;
        padding: 0 60px 0 0;
        width: 50%;
        -ms-flex-flow: column wrap;
        flex-flow: column wrap;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .l-page--en .p-ds-section__txtarea {
        padding: 0;
        width: 100%;
    }

    .p-ds-section__txtarea p {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2;
    }

    .l-page--en .p-ds-section__txtarea p {
        font-size: 14px;
        font-size: 0.65625rem;
        line-height: 1.5;
    }

    .p-ds-mv__ttl h2 {
        font-size: 80px;
        font-size: 5rem;
        line-height: 1.25;
    }

    .p-ds-mv__ttl p {
        margin-top: -65px;
        padding-bottom: 65px;
        height: 36px;
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.5;
    }

    .p-ds-mv__txt {
        padding: 0;
        text-align: center;
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2;
    }



    .p-ds-org {

        background-size: 4px 4px, cover;

    }

    .p-ds-tech {

        background-size: 4px 4px, cover;

    }


    .p-ds-anchorbox {
        display: block;
    }

    #dhfstyle .l-toggle {
        display: none;
    }

    .p-glo-expand {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .p-glo-expand__img {
        width: 68.65672%;
    }

    .p-glo-expand__dt {
        margin-bottom: 0;
        padding-left: 3.9801%;
        width: 31.34328%;
    }

    .p-glo-list dl {
        display: -ms-flexbox;
        display: flex;
        padding-top: 0;
    }

    .p-glo-list dt {
        float: none;
        padding-top: 24px;
        padding-right: 0;
        width: 31.34328%;
    }

    .p-glo-list dd {
        float: none;
        width: 37.31343%;
    }

    .p-glo-list dd:last-child {
        width: 31.34328%;
    }

    .p-history {
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-history__txt {
        margin-right: 7.14286%;
        padding: 80px 3.42857% 0;
        width: 64.28571%;
    }

    .p-history__img {
        margin-top: 0;
        padding-right: 0;
        padding-left: 0;
        width: 21.42857%;
    }

    .p-hi-img figure {
        margin-top: 118px;
        width: 84%;
    }

    .p-base {
        position: relative;
        z-index: 0;
        padding: 0 !important;
    }

    .p-base__header {
        padding: 80px 7.14286% 85px;
        width: 71.42857% !important;
    }

    .p-base__body {
        display: -ms-flexbox;
        display: flex;
        margin-top: -32px;
        height: 904px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-base__nav {
        margin-top: 32px;
        padding: 64px 3.42857% 0 7.14286%;
        width: 50%;
        height: calc(100% - 32px);
        font-size: 0;
    }

    .p-base__nav > p {
        display: none;
    }

    .p-base__depart {
        position: static;
        top: auto;
        right: auto;
        left: auto;
        z-index: 50;
        float: left;
        margin: 0;
        padding: 0;
        width: 45.65217%;
        border-top: solid 1px rgba(255, 255, 255, .5);
    }

    .p-base__depart:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .p-base__branch {
        float: left;
    }

    .p-base__branch:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .p-base__lst {
        display: block;
    }

    .p-base__lst a:hover,
    .p-base__lst a.is-active {
        background-color: #fff;
        color: #000;
    }

    .p-base__maparea {
        padding: 0;
        width: 50%;
        height: 100%;
    }

    .p-base__info {
        position: absolute;
        top: 96px;
        left: 4.8%;
        z-index: 50;
        margin: auto;
        padding: 0;
        width: 49.5%;
        background-color: #000;
    }

    .p-co-branch {
        margin-left: 8.69565%;
        width: 45.65217%;
    }

    .p-co-branch__lst {
        position: absolute;
        top: 0;
        left: 0;
        border-top: solid 1px rgba(255, 255, 255, .5);
        border-bottom: none;
    }

    .p-co-branch__lst a {
        padding: 14px 54px 14px 10px;
        border-top: none;
        border-bottom: solid 1px rgba(255, 255, 255, .5);
    }

    .p-co-branch__lst a.is-active {
        border-top: none;
        border-bottom-color: rgba(255, 255, 255, .5);
        background-color: #000;
        color: #00498d;
    }

    .p-co-branch__lst a.is-active:before {
        background-color: #00498d;
    }

    .p-co-branch__lst a.is-active:after {
        background-color: #00498d;
    }

    .p-co-branch__lst a:hover {
        color: #00498d;
    }

    .p-co-branch__lst a:hover:before,
    .p-co-branch__lst a:hover:after {
        background-color: #00498d;
    }

    .p-co-branch__lst > .p-base__info--main {
        display: none;
    }

    .p-factory__body {
        padding: 0 0 100px;
    }

    .p-factory__selecter {
        position: absolute;
        top: 64px;
        left: 50%;
        margin-bottom: 0;
        width: 46.08333%;
    }

    .p-factory__lst a:hover {
        background-color: #bbb;
    }

    .p-factory__box .c-mask-box {
        top: 64px;
    }

    .p-factory__item {
        padding: 64px 0 120px;
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
    }

    .p-factory__txtarea {
        padding-top: 76px;
        width: 50%;
    }

    .p-factory__access {
        margin-bottom: 0;
        padding-right: 7.83333%;
    }

    .p-factory__link {
        position: absolute;
        right: 7.83333%;
        bottom: -6px;
    }

    .p-factory__link a:hover:after {
        opacity: 0;
    }

    .p-factory__img {
        width: 50%;
    }

    .p-factory__img img {
        width: 89.33333%;
    }

    .p-phi-object__link {
        display: block;
    }

    dl.p-phi-lst,
    dl.p-phi-lst--large,
    dl.p-phi-lst--en {
        height: 70px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    dl.p-phi-lst dt,
    dl.p-phi-lst--large dt,
    dl.p-phi-lst--en dt {
        padding: 20px 2.98507%;
        width: 31.34328%;
    }

    dl.p-phi-lst dt:before,
    dl.p-phi-lst--large dt:before,
    dl.p-phi-lst--en dt:before {
        width: 40px;
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.25;
    }

    dl.p-phi-lst dd,
    dl.p-phi-lst--large dd,
    dl.p-phi-lst--en dd {
        padding: 18px 3.73134% 18px 0;
        width: 68.65672%;
        font-size: 15px;
        font-size: .9375rem;
        line-height: 2.53333;
    }

    dl.p-phi-lst--large {
        height: 90px;
    }

    dl.p-phi-lst--large dt {
        padding: 23px 3.73134%;
        width: 31.34328%;
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 2.44444;
    }

    dl.p-phi-lst--large dt:before {
        width: 56px;
        vertical-align: -10px;
        font-size: 44px;
        font-size: 2.75rem;
        line-height: 1;
    }

    dl.p-phi-lst--large dd {
        padding: 23px 3.73134% 23px 0;
        width: 68.65672%;
        font-size: 15px;
        font-size: .9375rem;
        line-height: 3.73333;
    }

    dl.p-phi-lst--en {
        height: auto;
    }

    dl.p-phi-lst--en dt {
        padding-bottom: 0;
        width: 100%;
    }

    dl.p-phi-lst--en dt:before {
        width: 56px;
        vertical-align: -10px;
        font-size: 44px;
        font-size: 2.75rem;
        line-height: 1;
    }

    dl.p-phi-lst--en dd {
        padding-top: 0;
        padding-right: 3.73134%;
        padding-left: 3.73134%;
        width: 100%;
    }

    ol.p-phi-lst li {
        padding: 18px 3.73134%;
    }

    ol.p-phi-lst li:before {
        width: 40px;
    }

    .p-co-video {
        margin-left: -5.88889%;
        width: 111.9403%;
    }

    .p-contact__conf {
        top: 80px;
        max-width: 73.28571%;
        width: 100%;
        height: calc(100vh - 160px);
    }

    .p-conf__body {
        padding: 120px 7.14286%;
    }

    .p-conf__btn {
        max-width: 300px;
        width: 300px;
    }

    .p-conf__send {
        margin-top: 80px;
    }

    .p-news, .p-video {
        margin-bottom: 90px;
        padding-right: 7.14286%;
        padding-left: 28.57143%;
    }

    .p-news a:hover {
        background-color: #000;
        color: #fff;
    }

    .p-news__lst, .p-video__lst {
        padding: 0 5.6%;
        width: 100%;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .p-news__item a {
        display: -ms-flexbox;
        display: flex;
        padding: 16px 0;
        font-size: 14px;
        font-size: .75rem;
        line-height: 2;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-news__date {
        padding-right: 0;
        padding-left: 3.07692%;
        width: 30.25641%;
    }

    .p-news__ttl {
        padding-right: 0;
        padding-left: 1.79487%;
        width: 69.74359%;
    }

    .p-nnav {
        margin: 60px auto;
        width: 100%;
    }

    .p-nnav ul {
        overflow: hidden;
        text-align: center;
    }

    .p-nnav li {
        display: inline-block;
    }

    .p-nnav li a {
        display: inline-block;
        margin: 0 5px;
        min-width: 30px;
        height: 30px;
        line-height: 30px;
        text-align: center;
        border: 1px solid #333;
        border-radius: 15px;
        font-size: 12px;
        padding: 0 5px;
    }

    .p-nnav li a span {
        display: inline-block;
        color: #000;
        font-weight: bold;
        font-size: 14px;

    }

    .p-nnav li a:hover span {
        color: #fff;
    }

    .p-nnav .page-numbers:hover {
        background-color: transparent;
        color: #00498d;
    }

    .p-nnav .page-numbers.prev {
        left: 0;
    }

    .p-nnav .page-numbers.next {
        right: 0;
    }

    .p-news-detail {
        margin-right: 7.14286%;
        margin-left: 28.57143%;
        padding: 0 3.42857%;
        width: 64.28571%;
    }

    .p-news-detail__header {
        margin-bottom: 40px;
    }

    .p-news-detail__ttl {
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 2;
    }

    .p-news-detail__body a:hover {
        text-decoration: none;
    }

    .p-bi-spraying {
        padding-top: 80px !important;
    }

    .p-bi-fusing__img figure + figure {
        margin-left: 3.62319%;
    }

    .p-chara-process__body {
        display: -ms-flexbox;
        display: flex;
        padding: 64px 0 0;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-chara-process__img {
        width: 50%;
    }

    .p-chara-process__flow {
        margin-top: 110px;
        margin-left: 4%;
        width: 42%;
    }

    .p-sfcl-example__img {
        margin-top: 48px;
    }

    .p-mcn-pipe__app {
        margin-top: 74px;
    }

    .p-mcn-pipe__ictures {
        margin-top: 74px;
    }

    .p-mcp-intro__img {
        margin-top: 52px;
    }

    .p-mcp-ictures__img {
        display: -ms-flexbox;
        display: flex;
        margin-top: 42px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-mcp-ictures__img figure {
        width: 45.27363%;
    }

    .p-mcp-ictures__img figure + figure {
        margin-top: 0;
    }

    .p-mcp-ictures__img figcaption {
        margin-bottom: 12px;
    }

    .p-pl-mete__txt {
        margin-bottom: 56px;
    }

    .p-product-nav, .p-news-nav {
        margin-top: -90px;
        margin-left: 7.14286%;
        padding-top: 140px;
        width: 92.85714%;
        height: auto;
    }

    .p-product-nav__ttl, .p-news-nav__ttl {
        display: block;
    }

    .p-product-nav__search, .p-news-nav__search {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-product-nav__search a, .p-news-nav__search a {
        transition: .3s ease;
    }

    .p-product-nav__search a:hover, .p-news-nav__search a:hover {
        background-color: #fff;
        color: #00498d;
    }

    .p-product-nav__search a:hover:before,
    .p-product-nav__search a:hover:after {
        background-color: #00498d;
    }

    .p-product-nav__items a:hover, .p-news-nav__items a:hover {
        background-color: #fff;
        color: #00498d;
    }

    .p-product-nav__items--category a:hover:after {
        background-image: url('/theme/default/images/anchor_r.svg');
    }

    .p-product-nav__items--type a:hover {
        background-color: #fff;
        color: #00498d;
    }

    .p-product-nav__name {
        display: block;
    }

    .p-product-nav__btn {
        display: block;
    }

    .p-product--index {
        margin-top: 120px;
        padding-bottom: 0;
    }

    .p-product--index .p-product__item {
        padding-bottom: 0;
    }

    .p-product__item--reverse .p-product__header {
        float: right;
        margin-left: 0;
    }

    .p-product__item--reverse .p-product__header:after {
        display: block;
        clear: both;
        height: 0;
        content: "";
    }

    .p-product__item--reverse .p-product__name,
    .p-product__item--reverse .p-product__btn {
        margin-left: 48.85714%;
    }

    .p-product__item--reverse .p-product__txt {
        margin-left: 28.57143%;
    }

    .p-product__item--reverse .p-product__service {
        left: 74.42857%;
    }

    .p-product__item--reverse .p-product__service dd {
        width: 100%;
    }

    .p-product__item--category .p-product__header {
        width: 71.42857%;
    }

    .p-product__item--category .p-product__name {
        margin-left: 10%;
    }

    .p-product__item--category .p-product__btn {
        margin-left: 10%;
        width: 25.2%;
    }

    .p-product__item--category .p-product__img {
        margin-top: -232px;
        margin-left: 50%;
        width: 50%;
    }

    .p-product__item--category.p-product__item--reverse .p-product__name {
        margin-left: 34.8%;
    }

    .p-product__item--category.p-product__item--reverse .p-product__btn {
        margin-left: 34.8%;
    }

    .p-product__item + .p-product__item {
        margin-top: 0;
    }

    .p-product__header {
        padding: 75px 0;
        width: 50%;
    }

    #p-product-cpzx .p-product__header {
        width: 21.42857%;
        margin-left: 7.14286%;
    }

    #p-product-cpzx .p-product__txt {
        margin-top: -22%;
    }

    .p-product__name {
        margin-bottom: 34px;
        margin-left: 14.28571%;
    }

    .p-product__body {
        display: -ms-flexbox;
        display: flex;
        padding-bottom: 0;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-product__img {
        margin-top: -257px;
        margin-left: 28.57143%;
        width: 71.42857%;
    }

    .p-product__img--tl2 {
        margin-top: -295px;
    }

    .p-product__txt {
        margin-left: 28.57143%;
        padding: 48px 3.42857% 115px;
        width: 64.28571%;
    }

    .p-product__txt p {
        font-size: 15px;
        font-size: .8rem;
        line-height: 2;
    }

    .p-product__service {
        position: absolute;
        top: 367px;
        left: 7.14286%;
        padding: 0;
        width: 21.42857%;
    }

    .p-product__service--tl2 {
        top: 406px;
    }

    .p-product__service dt {
        margin-bottom: 12px;
    }

    .p-product__btn {
        position: relative;
        right: auto;
        margin: 0 0 0 14.28571%;
        width: 37.14286%;
    }

    .p-product__btn:hover .c-btn-line,
    .p-product__btn:hover .c-btn-line:before {
        background-color: #00498d;
    }

    .p-pro-kind__body {
        margin-top: -30px;
    }

    .p-pro-kind__item + .p-pro-kind__item {
        margin-top: 80px;
    }

    .p-pro-kind__item--more + .p-pro-kind__item {
        margin-top: 80px;
    }

    .p-pro-kind__btn {
        margin-top: 34px;
        width: 47.72727%;
    }

    .p-pro-index__ttl {
        padding: 0 0 15px;
    }

    .p-pro-index__ttl:after {
        left: 0;
    }

    .p-pro-chara__img {
        margin-bottom: 60px;
        width: 68.65672%;
    }

    .p-pro-chara__img--graph1 {
        margin-bottom: 60px;
    }

    .p-pro-chara__img--graph2 {
        margin-bottom: 60px;
    }

    .p-pro-chara__heading {
        margin-top: 100px;
        margin-bottom: 48px;
    }

    .p-pro-anchor__ttl span {
        display: inline-block;
        margin-top: 0;
        margin-left: 8px;
    }

    .p-pro-anchor__item a:hover {
        color: #00498d;
    }

    .p-pro-anchor__btn:hover .c-btn-part {
        background-color: #fff;
        animation: btntate .5s 1 cubic-bezier(.645, .045, .355, 1);
    }

    .p-pro-anchor__btn:hover .c-btn-part:before {
        background-color: #fff;
        -ms-transform: rotate(30deg);
        transform: rotate(30deg);
    }

    .p-sml-chara {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-sml-chara__img {
        width: 31.34328%;
    }

    .p-sml-chara__desc {
        width: 68.65672%;
    }

    .p-stm-dsh {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .p-stm-dsh li {
        max-width: 100%;
        width: 23.13433%;
    }

    .p-stm-dsh li:not(:first-child) {
        margin-top: 0;
    }

    .p-stm-dsh p {
        font-size: 1.07143vw;
        line-height: 1.8;
    }

    .p-recruit-news {
        font-size: 14px;
        font-size: 0.65625rem;
        line-height: 2;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-recruit-news a {
        font-size: 14px;
        font-size: 0.65625rem;
        line-height: 2;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: center;
        align-items: center;
    }

    .p-recruit-news a:hover {
        background-color: #000;
        color: #fff;
    }

    .p-recruit-news__date {
        padding-left: 3.07692%;
        width: 30.25641%;
    }

    .p-recruit-news__ttl {
        padding-left: 1.79487%;
        width: 69.74359%;
    }

    .p-recruit {
        padding-bottom: 113px;
        width: 85.71428%;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
        margin: 0 auto;
    }

    .p-recruit__btn {
        left: 16%;
        width: 68%;
    }

    .p-recruit-newgr,
    .p-recruit-career {
        padding: 40px;

    }

    .p-recruit-newgr .c-blst,
    .p-recruit-career .c-blst {

    }

    .p-recruit-newgr .c-blst__name,
    .p-recruit-career .c-blst__name {
        right: 20px;
    }

    .p-recruit-newgr {
        width: 53.84615%;
    }

    .p-recruit-newgr .c-blst {
        width: 45%;
    }

    .p-recruit-career {
        width: 46.15385%;
    }

    .p-recruit-career .c-blst {
        padding: 20px;
        width: 50%;
    }

    .p-recruit-flow {
        padding: 32px 4% 55px;
    }

    .p-recruit-guide {
        margin-top: 120px !important;
    }

    .p-recruit-contact {
        padding-top: 125px;
        padding-bottom: 112px;
    }

    .p-story--index {
        display: block;
        font-size: 0;
    }

    .p-story--index .p-story__kv {
        height: 150vh;
    }

    .p-story--index .p-story__body {
        position: absolute;
        bottom: 0;
        left: 50%;
        height: 100vh;
        background-image: none;
    }

    .p-story--index .p-story__body .p-str-ttl__txtarea {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        padding: 50px 0 68px 7.14286%;
        height: 345px;
        background-color: transparent;
    }

    .p-story--index .p-story__body .p-str-ttl__txtarea:after {
        content: none;
    }

    .p-story__kv {
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 2;
    }

    .p-story__kv.is-fixed {
        position: fixed;
        top: 0;
        bottom: auto;
    }

    .p-story__kv.is-fixed .p-story-img2 {
        top: -100vh;
        bottom: auto;
        display: block;
    }

    .p-story__kv.is-fixed .p-story-img3 {
        top: -200vh;
        bottom: auto;
        display: block;
    }

    .p-story__kv.is-fixed .p-story-img4 {
        top: -300vh;
        bottom: auto;
        display: block;
    }

    .p-story__img {
        height: 100vh;
        background-position: left top;
    }

    .p-story__body {
        padding-right: 7.14286%;
        padding-left: 50%;
    }

    .p-story__body.is-fixed {
        position: fixed;
        top: 0;
        bottom: auto;
        height: 100vh;
    }

    .p-story__body section {
        padding-top: 120px;
    }

    .p-story__txtarea {
        padding: 120px 48px 0;
        background-color: #f9f9f9;
    }

    .p-story__item {
        background-position: left top;
    }

    .p-story__item {
        position: absolute;
        left: 0;
        z-index: 2;
        height: 100vh;
        -ms-transform: scale(.5);
        transform: scale(.5);
        -ms-transform-origin: left top;
        transform-origin: left top;
    }

    .p-story__item--item1 {
        top: 0;
    }

    .p-story__item--item2 {
        top: calc(50vh - 1px);
    }

    .p-story__item--item3 {
        top: calc(100vh - 1px);
    }

    .p-story__item .p-str-ttl__txtarea {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 14.28571%;
        margin: auto;
        width: 42.85714%;
        height: 100px;
        -ms-transform: scale(2);
        transform: scale(2);
        -ms-transform-origin: left center;
        transform-origin: left center;
    }

    .p-story__thumb {
        display: none;
    }

    .p-str-ttl {
        position: fixed;
        top: 0;
        bottom: 0;
        margin: auto;
        padding-right: 7.14286%;
        padding-left: 7.14286%;
        width: 50%;
    }

    .p-str-ttl__name {
        font-size: 80px;
        font-size: 5rem;
        line-height: 1.075;
    }

    .p-str-ttl__name span {
        font-size: 28px;
        font-size: 1.75rem;
        line-height: 1.5;
    }

    .p-str-ttl__txtarea {
        overflow: visible;
        padding: 10px 0 68px;
    }

    .p-str-ttl__num {
        width: 88px;
    }

    .p-str-ttl__type {
        width: calc(100% - 88px);
    }

    .p-str-ttl__ttl {
        width: calc(100% - 88px);
    }

    .p-str-ttl__txt {
        margin-bottom: 45px;
    }

    .p-str-nav {
        margin-top: 120px;
    }

    .p-str-nav__link {
        margin-top: 80px;
    }

    .p-str-nav__link a:hover {
        opacity: .8;
    }

    .p-str-nav__link .c-olst__txtarea {
        padding: 10px 0 68px;
    }

    .p-str-nav__link .c-olst__num {
        width: 88px;
    }

    .p-str-nav__link .c-olst__type {
        width: calc(100% - 88px);
    }

    .p-str-nav__link .c-olst__ttl {
        width: calc(100% - 88px);
    }

    .p-tech__header {
        padding: 59px 7.14286%;
        width: 71.42857%;
    }

    .p-tech__name {
        margin-bottom: 32px;
        font-size: 36px;
        font-size: 2.25rem;
        line-height: 1.66667;
    }

    .p-tech__body {
        padding: 80px 7.14286% 0;
    }

    .p-tech__body--flex {
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-tech__item {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-tech__item--reverse {
        -ms-flex-flow: row-reverse nowrap;
        flex-flow: row-reverse nowrap;
    }

    .p-tech__item + .p-tech__item {
        margin-top: 80px;
    }

    .p-tech__img {
        width: 50%;
    }

    .p-tech__txtarea {
        padding: 0 4%;
        width: 50%;
    }

    .p-tech__flow {
        padding: 0 4%;
        width: 75%;
    }

    .p-tech__gallery {
        margin-top: 0;
        padding-right: 0;
        padding-left: 2.85714%;
        width: 25%;
    }

    .p-tech__gallery li + li {
        margin-top: 32px;
    }

    .p-tech-story {
        margin-top: 120px;
        width: 100%;
        height: 462px;
    }

    .p-tech-story__txtarea {
        padding: 76px 0 0 7.14286%;
        width: 30.76923%;
    }

    .p-tech-story__img {
        width: 69.23077%;
        height: auto;
    }

    .p-tech-story a {
        position: relative;
        width: 92.85714%;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-tech-story a:hover .p-tech-story__btn {
        border-color: #fff;
        background-color: #fff;
        color: #000;
    }

    .p-works {
        padding-top: 80px;
    }

    .p-works-nav {
        margin-bottom: 68px;
    }

    .p-works-nav__lst {
        width: 85.71429%;
    }

    .p-works-nav__item {
        padding: 18px 0;
        width: 25%;
        font-size: 16px;
        font-size: 0.75rem;
        line-height: 1.5;
    }

    .p-works-nav__item:hover {
        color: #fff;
    }

    .p-works-nav__item:hover:after {
        opacity: 1;
    }

    .p-works-index {
        width: 85.71429%;
    }

    .p-works-index__mask {
        display: none;
        -ms-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    .p-works-index__mask .c-mask-wh,
    .p-works-index__mask .c-mask-lgr {
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
    }

    .p-works-detail {
        margin-left: 28.57143%;
        padding: 80px 3.42857% 0;
        width: 64.28571%;
    }

    .p-works-detail__disc {
        overflow: hidden;
        text-align: left;
    }

    .p-works-detail__category li + li {
        margin: 0 0 8px 8px;
    }

    .p-works-detail__img {
        width: 68.65672%;
    }

    .p-works-detail__body {
        padding: 24px 0 112px;
    }

    .p-works-detail__lower {
        padding: 32px 0 0;
    }

    .p-works-detail__txt {
        margin-bottom: 56px;
    }

    .p-works-detail__txt p + p {
        margin-top: 30px;
    }

    .p-works-detail__data {
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 36px;
        padding-top: 46px;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .p-works-detail__data dl {
        width: 68.65672%;
    }

    .u-mt6 {
        margin-top: 6px !important;
    }

    .u-mt28 {
        margin-top: 28px !important;
    }

    .u-mt32 {
        margin-top: 32px;
    }

    .u-mb32-pc {
        margin-bottom: 32px;
    }

    .u-mb114 {
        margin-bottom: 114px;
    }

    .u-p-btn {
        padding: 18px 0;
    }

    .u-p-btn2 {
        padding: 7px 0;
    }

    .u-pb-btn {
        padding-bottom: 42px;
    }

    .u-pt0 {
        padding-top: 0 !important;
    }

    .u-pt32 {
        padding-top: 32px !important;
    }

    .u-pt34 {
        padding-top: 34px !important;
    }

    .u-pt60 {
        padding-top: 60px !important;
    }

    .u-pt64 {
        padding-top: 64px !important;
    }

    .u-pt70 {
        padding-top: 70px !important;
    }

    .u-pt80 {
        padding-top: 80px !important;
    }

    .u-pb0 {
        padding-bottom: 0 !important;
    }

    .u-pb108 {
        padding-bottom: 108px !important;
    }

    .u-pb-content {
        padding-bottom: 42px;
    }

    .u-fz13 {
        font-size: 13px !important;
    }

    .u-fz18 {
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.5;
    }

    .is-pc {
        display: block !important;
    }

    .is-sp {
        display: none !important;
    }

    br.is-pc,
    span.is-pc {
        display: inline !important;
    }

    br.is-sp,
    span.is-sp {
        display: none !important;
    }
}


@media screen and (max-width: 992px) {

    .l-gnav {
        display: none !important;
    }

    .l-contact__btn {
        font-size: 14px;
        font-size: 0.65625rem;
        line-height: 1.5;
    }

    .l-page--en .p-ds-mv__ttl p {
        margin-top: -62px;
    }

    .p-product__item--category + .p-product__item--category {
        margin-top: 60px;
    }

    .p-product__btn {
        border: solid 1px rgba(0, 0, 0, .5);
        color: #000;
    }

    .p-story--index .p-story__item {
        height: 190px;
    }

    .p-story--index .p-story__item .p-str-ttl__txtarea {
        padding: 54px 6.4% 0;
    }

    .p-works-nav__item:nth-child(even),
    .p-works-nav__item:last-child {
        border-right: solid 1px #000;
    }

    .p-works-index__body .c-thlst__item {
        padding: 0 0 40px;
    }
}

@media screen and (min-width: 769px)  {
    #dhfstyle{
        height: 100vh;
        overflow: hidden;
    }
    #dhfstyle.is-ftr{
        height: auto;
    }
    #org,#application,#technology{
        display: none;
        opacity: 0;
    }
    .p-ds-chlg {
        display: none;
        height: calc(100vh + 62px);
        background-size: 4px 4px, cover;
        opacity: 0;
    }
    .p-ds-content {
        position: relative;
        height: 100vh;
    }
    .p-ds-mv {
        background-size: 4px 4px, cover;
    }
    .p-ds-section{
        position: absolute;
        top: 0;
        left: 0;
        height: 100vh;
    }
    .p-topworks .c-olst__img:before {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        visibility: hidden;
        width: 100%;
        height: 100%;
        border: solid 5px #00498d;
        content: "";
        opacity: 0;
        transition: .2s cubic-bezier(.645, .045, .355, 1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}

@media screen and (max-width: 992px) {
    .p-topproduct__bg,
    .p-topproduct__lst,
    .p-toptechnology__body,
    .p-toptechnology__lst,
    .p-topworks__item,
    .p-topabout__img,
    .p-topabout__mapinfo,
    .p-topabout__map,
    .l-topsubsection__header,
    .l-topsubsection__body,
    .p-product__img,
    .p-product__header,
    .p-product__item--category .p-product__header,
    .p-product__item--category .p-product__img,
    .p-topabout__more,
    .l-section__header {
        width: 100%;
    }

    .p-toptechnology__item--item2,
    .p-toptechnology__item--item3,
    .p-topworks__item--item2,
    .p-topworks__item--item3,
    .p-product__img,
    .p-product__item--reverse .p-product__header,
    .p-product__item--category .p-product__img {
        margin-left: 0;
    }

    .p-topworks__item--item1 .c-olst__txtarea {
        margin-left: 6.4%;
    }

    .p-topworks__bg, .p-mv__accent {
        width: 95%;
        left: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px;
    }
    .p-mv__accent .p-mv__vbtn{
        width: 45%;
        padding: 8px 0;
        margin: 0;
    }
.p-news__lst li{
    width: 100%;
}
    .c-btn-plane--bk, .l-gnav-sp__lang ul, .l-gnav-sp > .c-btn {
        width: 87.2%;
        margin-left: auto;
        margin-right: auto;
    }

    .l-page:after {
        display: none;
    }

    .p-topabout__mapinfo {
        padding-left: 6.4%;
        padding-right: 6.4%;
    }

    .p-product__name {
        font-size: 1.25rem;
    }

    .p-product__body {
        padding-bottom: 0;
    }

    .p-product__txt {
        display: none;
    }

    .p-product__header {
        padding: 20px 6.4%;
    }

    .p-product__img {
        margin-top: 0;
    }

    .p-topworks__more {
        width: 100%;
        margin-left: 0;
    }

    #top-news, #top-content {
        padding-bottom: 10px;
    }

    .l-content__accent {
        width: 93.6%;
        margin-left: 6.4%;
    }

    .p-news-detail__footer {
        padding-bottom: 0;
    }
}

.other-news-list {
    padding: 0 0 40px;

}

.other-news-list .p-news-detail__ttl {
    padding: 30px 0;
}

.other-news-list .p-news__lst {
    padding: 0;
}

.next-prev {
    padding: 30px 0;
    overflow: hidden;
}

.next-prev .wz-content {
    position: relative;
}

.wz-content span {
    font-size: 16px;
    color: #fff;
}

.prev-item {
    width: 120px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    color: #fff;
    background-color: #00bacf;
    border: 1px solid #00bacf;
    transition: all .5s;
}

.next-item {
    width: 120px;
    height: 40px;
    line-height: 40px;
    padding: 0;
    text-align: center;
    color: #fff;
    background-color: #00bacf;
    border: 1px solid #00bacf;
    transition: all .5s;
}

.next-prev a {
    text-decoration: none;
}

.prev-item {
    float: left;
}

.next-item {
    float: right;
}

.next-item .am-align-right, .prev-item .am-align-left {
    margin: 0;
}

.prev-item:hover, .next-item:hover {
    background-color: #00498d;
    border-color: #00498d;
    color: #fff;
}

.prev-item:hover a, .next-item:hover a {
    color: #fff;

}

.prev-item img, .next-item img {
    display: none;
}

.prev-item p, .next-item p {
    margin: 0;
}

.contact-left {
    width: 50%;
    padding-left: 5%;
    float: left;
}

.contact-left .map {
    margin-top: 40px;
}

.contact-left a {
    color: #000;
    text-decoration: none;
}

.contact-right {
    width: 50%;
    float: right;
    padding: 0 5%;
}

@media screen and (max-width: 992px) {
    .contact-left, .contact-right {
        float: none;
        width: 100%;
        padding: 0 3%;
        margin-top: 20px;
    }
}

/*产品列表*/
.side-menu {
    background: #f6f6f6;
    color: #00498d;
    padding: 0 20px;
    height: 60px;
    line-height: 60px;
    overflow: hidden;
    cursor: pointer;
}

.side-menu span.icon-logo {
    font-size: 40px;
}

.side-menu b {
    display: inline-block;
    vertical-align: top;
    font-size: 24px;
    font-weight: normal;
    color: #000;
}

.side .subject {
    border: none;
    background-color: #242424;
    padding: 10px 20px;
}


.side .subject b {
    border: none;
    color: #fff;
    font-weight: bold;
}

.side .am-list {
    padding: 0;
    margin: 0;
    background-color: #f5f5f5;
}

.side li.classOne {
    background-color: #f5f5f5;
    border-top: 1px solid #fff;
    margin-bottom: 0;
}

.side li.classOne > a {
    background-image: linear-gradient(90deg, #00bacf 10%, #0075d3 90%);
    color: #fff;
}

.side li.classOne:nth-child(1) {
    border-top: 0;
}

.side li.classOne > a {
    padding: 0 20px;
    display: block;
    width: 100%;
    height: 45px;
    line-height: 45px;
    font-size: 16px;
    transition: all .5s;
}

.sub {
    margin: 0;
    padding: 10px 20px;
}

.sub li.classTwo a {
    font-size: 16px;
    padding-left: 25px;
    color: #000;
}

.sub li.classTwo {
    line-height: 32px;
    border-left: 1px solid #ccc;
    position: relative;
}

.sub li.classTwo:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 1px;
    background-color: #ccc;
    top: 16px;
    left: 0;
}

.cate_list li span.am-fr {
    font-weight: normal;
    color: #fff;
    padding: 0 10px;
    height: 20px;
    background-color: #ccc;
    border-radius: 10px;
    line-height: 18px;
    font-size: 12px;
}

.cate_list li:hover span.am-fr {
    background-color: #242424;
}

.call {
    margin-top: 20px;
    overflow: hidden;
}

.call h1 {
    font-size: 28px;
    font-weight: bold;
    color: #00498d;
    margin: 5px 0;
    line-height: normal;
    padding: 0;
}

.call h1 span {
    font-size: 16px;
    color: #000;
    font-weight: normal;
}

.more-link {
    display: block;
    color: #228cd7;
    margin: 15px 0 0;
    transition: all .5s;
}

.more-link:hover {
    color: #0f5f97;
}


button, * {
    outline: none;
}


/*产品详情*/
.pro_show {
    margin: 0 auto;
}

.pro_show .zoom img {
    width: 100%;
}

.pro_show .thumb_pic {
    margin: 20px 0 0 0;
    text-align: center;
}

.pro_show .thumb_pic ul {
    margin: 0 auto;
}

.pro_show .thumb_pic ul li {
    float: left;
    margin-right: 5px;
    border: 1px solid #eaeaea;
    padding: 3px;
    cursor: pointer;
    position: relative;
}

.pro_show .thumb_pic ul li.hover {
    border: 1px solid #00bacf;
    background: #fff;
}

.pro_show .thumb_pic ul li.hover:after {
    content: " ";
    position: absolute;
    right: 27px;
    top: -6px;
    width: 11px;
    height: 11px;
    border: #00bacf solid 1px;
    border-left: 0;
    border-bottom: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    background: #00bacf;
    z-index: -1;
}

.pro_show h1 {
    font-size: 24px;
    padding: 0;
    font-weight: 400;
    text-align: left;
    margin: 0 0 20px 0;
}

.pro_show h5 {
    font-size: 14px;
    margin: 10px 0;
    padding: 0;
    color: #999;
    font-weight: normal;
}

.pro_show span.tel {
    font-size: 22px;
    font-weight: bold;
    color: #00498d;
}

.pro_show .attribute {
}

.pro_show .attribute li {
    font-size: 14px;
    line-height: 30px;
}

.pro_show .attribute li em {
    display: inline-block;
    width: 80px;
    font-style: normal;
    color: #555;
    font-size: 14px;
}

.pro_show .price {
    font-size: 14px;
    line-height: 30px;
    margin: 20px 0;
}

.pro_show .price span {
    font-size: 36px;
    color: #f60;
}

.pro_show .price em {
    font-size: 12px;
    color: #999;
    font-style: normal;
    padding-left: 5px;
}

.pro_show .tags {
    margin: 20px 0;
}

.pro_show .tags a {
    margin-left: 10px;
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #dadada;
    background: #fff;
    padding: 2px 6px;
    font-weight: normal;
    font-size: 14px;
}

.pro_show .tags a:hover {
    background: #242424;
    color: #fff;
    border-color: #242424;
}

.pro_show .action {
    margin: 20px 0;
}

.pro_show .action a {
    color: #fff;
}

.pro_intro {
    margin-top: 30px;
    text-align: center;
}

.pro_intro p {
    margin-bottom: 10px;
    text-align: center;
}

.pro_intro .plist {
    margin: 15px;
    width: 300px;
}

.pro_intro .plist ul {
    width: 304px;
}

.pro_intro .plist ul li {
    float: left;
    width: 137px;
    margin: 0 15px 15px 0;
}

.pro_intro .plist ul li a {
    border: 1px solid #ededed;
    padding: 4px;
    display: block;
    background: #fff;
    border-radius: 4px;
}

.pro_intro .plist ul li a div {
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.pro_intro .plist ul li a div img {
    width: 100%;
    height: 100%;
    max-height: 127px;
    min-height: 127px;
    display: block;
    border: 0;
}

.pro_intro .plist ul li a p {
    text-align: center;
    font-size: 14px;
    color: #333;
    margin: 0;
    padding: 5px 0;
}

.pro_intro .plist ul li a:hover p {
    color: #f30;
}

.pro_intro .tabs {
    width: 100%;
    background: #fff;
    margin: 30px 0;
}

.pro_intro .tabs ul {
    width: 100%;
    background: #fff;
    overflow: hidden;
}

.pro_intro .tabs ul li {
    float: left;
}

.pro_intro .tabs ul li a {
    display: block;
    padding: 10px 30px;
    text-align: center;
    font-size: 18px;
    border-right: 1px solid #f3f3f3;
    border-bottom: 1px solid #f3f3f3;
    background: #eee;
    color: #333;
    border-top: 2px solid #fff;
}

.pro_intro .tabs ul li.hover a {
    border-bottom: 1px solid #fff;
    background: #fff;
    font-weight: bold;
    color: #00bacf;
    border-top: 2px solid #00bacf;
}

.pro_intro .intro {
    padding: 30px 0;
    display: none;
}

.pro_intro .right {
    float: left;
    width: 850px;
    border: 1px solid #f3f3f3;
    box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.1);
}

.pro_intro > divs {
    width: 100%;
    background: #f7f7f7;
    margin: 30px 0;
}

.pro_intro > divs ul {
    width: 100%;
    background: #f7f7f7;
}

.pro_intro > divs ul li {
    float: left;
}

.pro_intro > divs ul li a {
    display: block;
    padding: 10px 30px;
    text-align: center;
    font-size: 18px;
    border-right: 1px solid #f3f3f3;
    border-bottom: 1px solid #f3f3f3;
    background: #fff;
    color: #999;
    border-top: 2px solid #fff;
}

.pro_intro > divs ul li.hover a {
    border-bottom: 1px solid #fff;
    background: #fff;
    font-weight: bold;
    color: #333;
    border-top: 2px solid #242424;
}

.pro_intro .intro {
    padding: 30px 0;
    display: none;
    clear: both;
}

.pro_intro .intro h3 {
    font-size: 20px;
    margin: 10px 0;
}

.pro_intro .intro p {
    margin-bottom: 10px;
}

.pro_intro .intro td {
    text-align: center;
}

.pro_intro .intro td p {
    text-indent: 0;
    margin: 0;
    padding: 0;
}

.pro_intro .intro p img {
    margin-left: -2em;
}

.pro_intro .intro td p img {
    margin-left: 0;
}

.pro_intro .intro img {
    max-width: 100%;
}

.pro_intro .intro .extend {
}

.pro_intro .intro .extend li {
    font-size: 14px;
    line-height: 30px;
}

.pro_intro .intro .extend li em {
    display: inline-block;
    width: 120px;
    font-style: normal;
    color: #555;
    font-size: 14px;
}


.action button {
    width: 200px;
    line-height: 50px;
    height: 50px;
    text-align: center;
    border: 1px solid #00bacf;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    background-color: #00bacf;
    color: #fff;
    transition: all .5s;
}

.action button:hover {
    background-color: #00498d;
    border-color: #00498d;
}

.subject {
    border-bottom: 1px solid #eaeaea;
    margin: 40px 0;
}

.subject b {
    border-bottom: 1px solid #00bacf;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    margin-bottom: -1px;
    font-weight: normal;
    color: #3b3b3b;
    font-size: 18px;
}

.subject .more {
    float: right;
}

.subject .more a {
    font-size: 12px;
    color: #999;
}

.subject .more a:hover {
    color: #f30;
}

.pro-list ul {
    display: flex;
    align-content: stretch;
    justify-content: space-between;
    overflow: hidden;
    flex-wrap: wrap;
}

.pro-news .p-news__ttl {
    padding-left: 0;
}

.pro-news .p-news__date {
    text-align: right;
}

#weixin {
    font-size: 40px;
    color: #999;
}

#code {
    width: 260px;
    display: none;
    text-align: center;
    position: relative;
}

#code p {
    font-size: 14px;
}

#code #close {
    font-size: 24px;
    color: #ccc;
    position: absolute;
    right: 0;
    top: -40px;
    z-index: 2;
    cursor: pointer;
}

.picture {
    overflow: hidden;
}

.picture img {
    overflow-x: hidden;
    overflow-y: hidden;
    position: relative;
    z-index: 1;
    transition-delay: 0s;
    transition-duration: 1s;
    transition-property: all;
    transition-timing-function: ease;
    /* Firefox 4 */
    -moz-transition-delay: 0s;
    -moz-transition-duration: 1s;
    -moz-transition-property: all;
    -moz-transition-timing-function: ease;
    /* Safari and Chrome */
    -webkit-transition-delay: 0s;
    -webkit-transition-duration: 1s;
    -webkit-transition-property: all;
    -webkit-transition-timing-function: ease;
    /* Opera */
    -o-transition-delay: 0s;
    -o-transition-duration: 1s;
    -o-transition-property: all;
    -o-transition-timing-function: ease;
}

.picture:hover img {
    transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1); /* IE 9 */
    -moz-transform: scale(1.1, 1.1); /* Firefox */
    -webkit-transform: scale(1.1, 1.1); /* Safari and Chrome */
    -o-transform: scale(1.1, 1.1); /* Opera */
}

.news_list span.date {
    color: #ccc;
    font-style: italic;
}

.news_list li {
    padding: 20px 0;
}

.pagelist {
    text-align: center;
    margin-top: 30px;
}

.pagelist li {
    display: inline-block;
    margin-right: 5px;
    transition: all .5s;
    min-width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
}

.pagelist li.active, .pagelist li:hover {
    background-color: #00498d;
}

.pagelist li.active a, .pagelist li:hover a {
    color: #fff;
}

.am-dimmer-active {
    overflow: hidden
}

.am-dimmer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .6);
    z-index: 1100;
    opacity: 0
}

.am-dimmer.am-active {
    opacity: 1
}

.am-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1110;
    display: none;
    opacity: 0;
    outline: 0;
    text-align: center;
    -webkit-transform: scale(1.185);
    -ms-transform: scale(1.185);
    transform: scale(1.185);
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    perspective: 1000px
}

.am-modal:focus {
    outline: 0
}

.am-modal.am-modal-active {
    opacity: 1;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    overflow-x: hidden;
    overflow-y: auto
}

.am-modal.am-modal-out {
    opacity: 0;
    z-index: 1109;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transform: scale(.815);
    -ms-transform: scale(.815);
    transform: scale(.815)
}

.am-modal:before {
    content: "\200B";
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.am-modal-dialog {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-left: auto;
    margin-right: auto;
    width: 270px;
    max-width: 100%;
    border-radius: 0;
    background: #f8f8f8
}

@media only screen and (min-width: 641px) {
    .am-modal-dialog {
        width: 540px
    }
}

.am-modal-hd {
    padding: 15px 10px 5px 10px;
    font-size: 1.8rem;
    font-weight: 500
}

.am-modal-hd + .am-modal-bd {
    padding-top: 0
}

.am-modal-hd .am-close {
    position: absolute;
    top: -8px;
    right: 4px
}

.am-modal-bd {
    padding: 15px 10px;
    text-align: center;
    border-bottom: 1px solid #dedede;
    border-radius: 2px 2px 0 0
}

.am-modal-bd + .am-modal-bd {
    margin-top: 5px
}

.am-modal-prompt-input {
    display: block;
    margin: 5px auto 0 auto;
    border-radius: 0;
    padding: 5px;
    line-height: 1.8rem;
    width: 80%;
    border: 1px solid #dedede;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none
}

.am-modal-prompt-input:focus {
    outline: 0;
    border-color: #d6d6d6
}

.am-modal-footer {
    height: 44px;
    overflow: hidden;
    display: table;
    width: 100%;
    border-collapse: collapse
}

.am-modal-btn {
    display: table-cell !important;
    padding: 0 5px;
    height: 44px;
    -webkit-box-sizing: border-box !important;
    box-sizing: border-box !important;
    font-size: 1.6rem;
    line-height: 44px;
    text-align: center;
    color: #0e90d2;
    display: block;
    word-wrap: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    border-right: 1px solid #dedede
}

.am-modal .am-btn {
    width: 120px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 20px;
    color: #fff;
    margin: 0 5px;
    transition: all .5s;
}

.am-btn-primary {
    background-color: #00bacf;
}

.am-btn-default {
    background-color: #999;
}

.am-btn-primary:hover {
    background-color: #00498d;
}

.am-btn-default:hover {
    background-color: #333;
}

.am-modal input, .am-modal textarea {
    width: 100%;
    border: 1px solid #ddd;
    margin-bottom: 10px;
    padding: 5px;
}

.am-modal input {
    line-height: 40px;
}

.pro_show .swiper-slide a {
    display: block;
}

.pro_show .gallery-top .swiper-slide {
    overflow: hidden;
}


.pro_show .gallery-top {
    margin-bottom: 20px;
}

.pro_show .gallery-thumbs .swiper-slide.swiper-slide-thumb-active img {
    border-color: #006dd9;
}

.pro_show .gallery-thumbs .swiper-slide {
    cursor: pointer;
}

.pro_show .gallery-thumbs {
    margin-top: 10px;
}

.gallery-thumbs .swiper-slide {
    height: 100%;
    opacity: 0.4;
}

.gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
}

@media only screen and (max-width: 992px) {
    #elm1c {
        font-size: 36px;
    }

    .l-topsection__ttl, .l-topsubsection__ttl {
        font-size: 24px;
    }

    .l-content__ttl h2:first-child {
        margin-top: 0;
        font-size: 1.4rem;
    }

    .p-recruit {
        width: 100%;
    }

    .p-recruit-newgr {
        margin-bottom: 10px;
    }

    .contact-left h1 {
        font-size: 24px;
    }

    .c-form .c-btn {
        margin-top: 20px;
    }

    .c-form label {
        font-size: 0.75rem;
    }

    .ico-pdf, .ico-dxf, .ico-dwg, .ico-jww {
        font-size: 1rem;
        right: 5%;
    }

    .l-breadcrumb span[property="name"] {
        font-size: 12px;
    }

    .c-thlst__item--btn {
        padding-bottom: 30px;
    }

    .pro-list li {
        width: 48%;
        margin-bottom: 2%;
        position: relative;
        text-align: center;
    }

    .pro-left {
        display: none;
    }

    .pro-right {
        width: 100%;
        padding: 0 3%;
    }

    .pro-right-content {
        width: 100%;
    }

    .pro-left-content {
        width: 100%;
        padding: 6% 0;
    }

    .pro_show h1 {
        margin: 0;
    }

    .mobile-show {
        padding: 3%;
        display: block;
    }

    .mobile-show li {
        width: 48%;
        text-align: center;
        margin-bottom: 2%;
    }


    #top-technology {
        margin-top: 10px;
    }
    #top-works {
        margin-top: 30px;
    }
    #top-news {
        padding-top: 10px;
    }
    .c-hd-style__name{
        font-size: 2.75rem;
    }
     .p-ds-mv__ttl p{
        font-size: 1rem;
        margin-top: -70px;
    }
    .p-video__lst li{
        width: 100%;
    }
}