/* Reset
------------------------------------------ */
img {
    image-rendering: auto;
}

hr.is-md {
    margin: 1.75rem auto;
}

/* WordPress Gallery
------------------------------------------ */

.gallery:not(body) {
    margin-left: -0.5em;
    margin-right: -0.5em;
}

.gallery:not(body):after {
    display: table;
    content: "";
    clear: both;
}

.gallery-item {
    margin: 0;
    float: left;
    padding: 0.5em;
}

.gallery-item img {
    width: 100%;
}

.gallery-columns-1 .gallery-item {
    width: 100%;
    float: none;
}

.gallery-columns-2 .gallery-item {
    width: 50%
}

.gallery-columns-3 .gallery-item {
    width: 33.3333%
}

.gallery-columns-4 .gallery-item {
    width: 25%
}

.gallery-columns-5 .gallery-item {
    width: 20%
}

.gallery-columns-6 .gallery-item {
    width: 16.6667%
}

.gallery-columns-7 .gallery-item {
    width: 14.2857%
}

.gallery-columns-8 .gallery-item {
    width: 12.5%
}

.gallery-columns-9 .gallery-item {
    width: 11.1111%
}

.gallery-columns-2 .gallery-item:nth-of-type(2n+1),
.gallery-columns-3 .gallery-item:nth-of-type(3n+1),
.gallery-columns-4 .gallery-item:nth-of-type(4n+1),
.gallery-columns-5 .gallery-item:nth-of-type(5n+1),
.gallery-columns-6 .gallery-item:nth-of-type(6n+1),
.gallery-columns-7 .gallery-item:nth-of-type(7n+1),
.gallery-columns-8 .gallery-item:nth-of-type(8n+1),
.gallery-columns-9 .gallery-item:nth-of-type(9n+1) {
    clear: left;
}

/* WordPress Core
-------------------------------------------------------------- */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    white-space: nowrap;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

.logged-in.admin-bar .l-header,
.logged-in.admin-bar .c-slidebar-button,
.logged-in.admin-bar .c-slidebar-menu {
    margin-top: var(--wp-admin--admin-bar--height) !important;
}

.logged-in.admin-bar .c-anchor-nav.is-sticky {
    top: var(--wp-admin--admin-bar--height) !important;
}

.logged-in.admin-bar .c-anchor-nav.is-sticky-custom {
    top: calc(var(--wp-admin--admin-bar--height) + 5.875rem) !important;
}

@media screen and (max-width: 59.3125em) {
    .logged-in.admin-bar .l-header,
    .logged-in.admin-bar .c-slidebar-button,
    .logged-in.admin-bar .c-slidebar-menu {
        margin-top: var(--wp-admin--admin-bar--height) !important;
    }

    .logged-in.admin-bar .c-anchor-nav.is-sticky-custom,
    .logged-in.admin-bar .c-anchor-nav.is-sticky {
        top: 0 !important;
    }
}

@media screen and (max-width: 600px) {
    #wpadminbar {
        position: fixed !important;
    }
}

.mw_wp_form_input .u-hidden-mw-wp-input,
.mw_wp_form_confirm .u-hidden-mw-wp-confirm,
.mw_wp_form_complete .u-hidden-mw-wp-complete {
    display: none !important;
}

.mw_wp_form_confirm .c-forms__privacy {
    display: none !important;
}

.mw_wp_form_confirm #zipauto,
.mw_wp_form_confirm .c-forms__note,
.mw_wp_form_confirm .c-forms__block.is-privacy-policy {
    display: none !important;
}

.mw_wp_form_confirm .c-forms__privacy a,
.mw_wp_form_confirm .c-forms__block a {
    text-decoration: none !important;
    color: inherit !important;
    pointer-events: none !important;
}

.c-forms__privacy-button-wrapper .mwform-checkbox-field.horizontal-item {
    width: 1.5rem;
}

.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0;
}

.c-forms__radio.is-column-02 .error,
.c-forms__checkbox.is-column-02 .error {
    grid-column: 1 / -1;
}

.wp-embedded-content {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 16px;
    margin-bottom: 16px;
}

/* Utils
-------------------------------------------------------------- */

.u-text-white {
    color: white;
}

.u-submit-button {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, visibility, box-shadow, transform;
    transition-timing-function: ease;
    transition-duration: .3s;
}

.u-empty-hidden:empty {
    display: none;
}

/* Button
-------------------------------------------------------------- */

.c-button.is-disabled {
    pointer-events: none;
    opacity: .4;
}

.c-result__button {
    background-color: #fff;
}

.c-forms__submit-button.is-fz-sm {
    font-size: 1.1rem;
    line-height: 1;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Search SP
-------------------------------------------------------------- */

body.admin-bar .c-block-search {
    top: calc(var(--wp-admin--admin-bar--height) + 3.75rem) !important;
}

body.admin-bar .c-block-search__overlay {
    padding-bottom: 3.75rem !important;
}

/* Breadcrumb
-------------------------------------------------------------- */

.c-breadcrumb__inner span.is-arrow span {
    position: relative;
    top: 2px;
}

@media screen and (max-width: 46.8125em) {
    .c-breadcrumb__inner {
        display: block;
        -webkit-box-orient: unset;
        -webkit-line-clamp: unset;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* WP Blocks
-------------------------------------------------------------- */

.wp-block-separator {
    margin: 2rem 0;
    border-top: 1px solid #f3f5f8;
}

/* Home
-------------------------------------------------------------- */

.c-main-visual__scroll {
    z-index: 100;
    bottom: -3.25rem;
}

@media screen and (max-width: 1300px) {
    .c-main-visual__scroll {
        display: none;
    }
}

.c-main-visual__products .swiper-wrapper {
    align-items: center;
}

.c-main-visual__products-item img {
    width: auto;
    max-height: 10rem;
}

@media screen and (max-width: 59.3125em) {
    .c-main-visual__products {
        margin-top: -42px;
    }

    .c-main-visual__products-item {
        width: 80px;
        height: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .c-main-visual__products-item img {
        max-width: 100%;
        max-height: 100%;
    }

    .c-main-visual__products .swiper-wrapper {
        gap: 20px;
    }
}

@media screen and (max-width: 46.8125em) {
    .c-block-front-product__head {
        margin-bottom: 1.625rem;
    }
}

/* Cases
-------------------------------------------------------------- */

.c-case-search:empty {
    display: none;
}

.c-forms__checkbox.is-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

@media screen and (max-width: 59.3125em) {
    .c-forms__checkbox.is-flex {
        gap: .5rem .75rem;
    }
}

.c-forms__checkbox.is-cases input[type=checkbox]:checked::after {
    background-color: transparent;
    left: -3px;
}

.c-forms__checkbox.is-cases input[type=checkbox] {
    margin-top: 1px;

}

.c-forms__checkbox label > span {
    margin-left: .4rem;
    font-size: .9rem;
}

@media screen and (max-width: 59.3125em) {
    .c-forms__checkbox label > span {
        font-size: .75rem;
    }
}

.c-button.c-forms__submit-button:after {
    margin-top: 2px;
}

.c-case-search__item-title {
    font-size: 1.2rem;
}

@media screen and (max-width: 59.3125em) {
    .c-case-search__item-title {
        font-size: 1rem;
        margin-bottom: .75rem;
    }

    .c-case-search__item {
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }
}

.c-case-results {
    padding-top: 3rem;
}

.c-case-results__list {
    min-height: 3rem;
    position: relative;
    padding-bottom: 3rem;
}

.c-case-results__list .loader {
    bottom: -1rem;
}

/* ACF Blocks
-------------------------------------------------------------- */

.u-spacer-large {
    height: 4rem;
}

.u-spacer-medium {
    height: 3.5rem;
}

.u-spacer-small {
    height: 1.5rem;
}

@media screen and (max-width: 46.8125em) {
    .u-spacer-large {
        height: 2rem
    }

    .u-spacer-medium {
        height: .75rem
    }

    .u-spacer-small {
        height: .75rem
    }
}

/* Single
-------------------------------------------------------------- */

.c-post-thumbnail {
    max-height: 30rem;
}

.c-post-thumbnail img {
    height: auto;
    object-fit: contain;
    width: 100%;
    max-height: 100%;
    aspect-ratio: 16 / 9;
}

/* heading
-------------------------------------------------------------- */

@media screen and (max-width: 46.8125em) {
    .c-heading.is-lg.is-sm-md {
        font-size: 1.1rem;
    }
}

/* Tab
-------------------------------------------------------------- */

.c-tabs__navs.is-auto {
    overflow: auto;
}

.c-tabs__navs.is-auto li {
    width: 100%;
    display: block;
    min-width: -moz-fit-content;
    min-width: fit-content;
}

@media screen and (max-width: 59.3125em) {
    .c-tabs__navs a {
        margin-right: 1rem;
        /*height: 100%;*/
        /*display: flex;*/
        /*align-items: center;*/
        /*justify-content: center;*/
        font-size: .9rem;
        /*padding: .5rem;*/
    }
}

/* l-post-content
-------------------------------------------------------------- */

@media screen and (max-width: 59.3125em) {
    .l-post-content h2,
    .l-post-content h3 {
        font-size: 1.1rem;
    }

    .l-post-content h4,
    .l-post-content h5 {
        font-size: 1rem;
    }
}

.l-post-content table {
    max-width: 100%;
}

.l-post-content.is-history {
    margin: 1rem 0;
}

.mce-content-body a,
.l-post-content.is-history a {
    color: #222;
    text-decoration: none;
}

.mce-content-body.acf_content a[target="_blank"]::after,
.l-post-content.is-history a[target="_blank"]::after {
    content: "open_in_new";
    font-family: "Material Icons Outlined";
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
    overflow: hidden;
    flex-shrink: 0;
    display: inline-block;
    width: 1em;
    height: 1em
}

.mce-content-body p > img,
.l-post-content p > img,
.mce-content-body p > span > img,
.l-post-content p > span > img {
    vertical-align: middle;
}

body.single-post .l-post-content img,
body.post-type-post .l-post-content {
    height: auto !important;
}

.l-post-content.is-acf-block h2:first-child,
.l-post-content.is-acf-block .acf-innerblocks-container h2:first-child {
    margin-top: 0 !important;
}

/* ACF block
-------------------------------------------------------------- */

.c-block-normal.is-image-right .c-block-normal__item .c-block-normal__item-image,
#growp-editor-wrapper .c-block-normal.is-image-right .c-block-normal__item .c-block-normal__item-image {
    order: 2;
}

.c-block-normal.is-image-right .c-block-normal__item .c-block-normal__item-content,
#growp-editor-wrapper .c-block-normal.is-image-right .c-block-normal__item .c-block-normal__item-content {
    order: 1;
}

.c-block-normal .c-block-normal__item.is-image-small,
#growp-editor-wrapper .c-block-normal .c-block-normal__item.is-image-small {
    grid-template-columns: 1fr 2fr;
}

.c-block-normal.is-image-right .c-block-normal__item.is-image-small,
#growp-editor-wrapper .c-block-normal.is-image-right .c-block-normal__item.is-image-small {
    grid-template-columns: 2fr 1fr;
}

@media screen and (max-width: 59.3125em) {
    .c-block-normal .c-block-normal__item.is-image-small,
    #growp-editor-wrapper .c-block-normal .c-block-normal__item.is-image-small,
    .c-block-normal.is-image-right .c-block-normal__item.is-image-small,
    #growp-editor-wrapper .c-block-normal.is-image-right .c-block-normal__item.is-image-small {
        grid-template-columns: 1fr;
    }
}

.c-block-normal__item.is-image-small img,
#growp-editor-wrapper .c-block-normal__item.is-image-small img {
    aspect-ratio: 3 / 2;
}

.c-block-normal__item-image.is-ratio-contain > img {
    aspect-ratio: revert-layer;
}

/* Header & Slidebar
-------------------------------------------------------------- */

.l-header button.l-header__sub-link.is-lang {
    font-size: 13px;
}

.l-header__sub {
    align-items: center;
}

.c-slidebar-menu__others-item {
    position: relative;
}

.c-slidebar-menu__lang {
    left: 50%;
    transform: translateX(-50%);
}

.c-special-megamenu__grandchilds-image > img {
    width: 80px;
}

.c-slidebar-menu__products-text,
.c-special-megamenu__grandchilds-text {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.c-slidebar-menu__lang-link.is-current,
.l-header__langs-link.is-current {
    opacity: 0.5;
    pointer-events: none;
    cursor: default;
}

/* Mega menu
-------------------------------------------------------------- */
/*.c-special-megamenu__childs-link,*/
/*.c-special-megamenu__childs-item:hover .c-special-megamenu__childs-link, .c-special-megamenu__childs-item.is-active .c-special-megamenu__childs-link {*/
/*    font-weight: 500;*/
/*}*/

.l-header__special-megamenu .c-special-megamenu__wrapper::before {
    content: '';
    width: 100%;
    height: 1px;
    background: #dee1e7;
    position: absolute;
    top: 15px;
    left: 0;
    z-index: 1;
}

/* loader
-------------------------------------------------------------- */
.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #2b487a;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin .75s linear infinite;
    margin: auto; /* 中央寄せ */
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.loader.is-mm {
    margin-top: 15px;
}

.loader.is-center {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 9999;
}

/* News
-------------------------------------------------------------- */

.c-block-news__link[target="_blank"]:not(.is-pdf) .c-block-news__link-texts::after {
    content: 'open_in_new';
    font-family: "Material Icons Outlined";
}

div.c-block-news__link .c-block-news__link-texts::after {
    display: none;
}

.c-news-header__tag ul li {
    margin-bottom: .5rem;
}

.c-news-header__tag ul li a.is-disabled {
    pointer-events: none;
}

/* Single
-------------------------------------------------------------- */

/* Relation */

@media screen and (max-width: 59.3125em) {
    .c-menu-list__solution-link {
        overflow: hidden;
    }
}

.c-block-download__list > .c-block-download__item:not(:last-child) {
    margin-bottom: 1.5rem;
}

@media screen and (max-width: 59.3125em) {
    .c-block-download__list > .c-block-download__item:not(:last-child) {
        margin-bottom: 1rem;
    }
}

@media screen and (max-width: 1100px) {
    .c-block-download__item-image {
        min-width: inherit;
        width: 100%;
        max-width: 50%;
    }
}

.c-block-download__item-image img {
    width: auto;
    max-height: 236px;
}

@media screen and (max-width: 59.3125em) {
    .c-block-download__item-image img {
        max-height: 180px;
    }
}

.c-block-download__item-content {
    min-width: 16.375rem;
}

@media screen and (max-width: 59.3125em) {
    .c-block-download__item-content {
        min-width: 100%;
    }
}

.c-download__item-text {
    font-size: .8rem;
    margin-top: .5rem;
}

.c-block-document {
    gap: 5rem;
    margin-top: 3.5rem;
    grid-template-columns: 356fr 588fr;
}

@media screen and (max-width: 46.8125em) {
    .c-block-document {
        gap: 2rem;
        margin-top: 1.5rem;
        grid-template-columns: repeat(1, 1fr);
    }
}

.c-forms-document-detail__image {
    background: transparent;
}

.c-download__item-image.is-non-image,
.c-forms-document-detail__image.is-non-image {
    background: #F4F5F9;
}

.c-forms-document-detail__image > img {
    aspect-ratio: 356 / 428;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.c-forms-document-detail__head {
    font-size: 24px;
    border-left: 2px solid #2b487a;
    line-height: 1.3;
    padding-left: 1rem;
    margin-bottom: 1.5rem;
}

@media screen and (max-width: 46.8125em) {
    .c-forms-document-detail__head {
        font-size: 1rem;
    }

    .c-forms-document-detail__image > img {
        aspect-ratio: 4 / 3;
        max-width: 480px;
    }
}

.c-forms-document-detail__button.is-left {
    text-align: left;
}


/* Blog */

.c-blog__item-image {
    aspect-ratio: 200 / 113;
    /*background-color: #F4F5F9;*/
}

.c-blog__item-image > img {
    object-fit: contain;
}

/* Faq */

.c-faq-results__item-title {
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
}

.c-faq-results__anser {
    align-items: revert;
}

/* Cases */

ul.cases-after-list > li::before {
    background: white;
}

.c-case-results__item-label {
    flex-wrap: inherit;
}

.c-case-results__item-label > b {
    flex: none;
}

.c-case-results__item-label > span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

div.c-case-results__item::after {
    content: none;
}

.c-case-results__item[target="_blank"]::after {
    content: "open_in_new";
}

.c-case-results__item.is-pdf::after {
    content: "picture_as_pdf";
}

.c-forms__submit-button.is-icon-down {
    /*margin-top: 3rem;*/
}

.c-forms__submit-button.is-icon-down::after {
    content: none;
}

.c-box-case__link-content {
    margin-top: .5rem;
}

.c-box-case__link-title {
    font-size: 1.1rem;
    /*行数制限*/
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.c-box-case__link-text {
    -webkit-line-clamp: 4;
}

.c-box-case__link {
    padding: 2rem 3rem;
}

@media screen and (max-width: 74.9375em) {
    .c-box-case__link {
        padding: 1.5rem;
    }
}

/* Products */

.c-block-front-product__box {
    width: calc(25% - (.125rem / 2));
}

@media screen and (max-width: 46.8125em) {
    .c-block-front-product__box {
        width: 100%;
    }
}

.c-product-page-head__head-titles span.is-label {
    font-size: .715rem;
    font-weight: 700;
}

.c-product-page-head__head-titles span.is-label.is-key3 {
    color: #fff;
    background-color: #1d5fd2;
}

.c-block-front-product__keywords.is-empty {
    margin-bottom: 1rem;
}

.c-product-page-head__content {
    width: 100%;
}

.c-menu-list__product-item span.is-title {
    white-space: nowrap;
}

.c-menu-list__product-item span.is-label {
    padding-left: 2rem;
}

.c-result__list.is-no-result {
    display: block;
}

.c-product-page-head__head-titles span.is-label.is-key2 {
    color: #2b487a;
    border: 1px solid #2b487a;
}

.c-product-box__item.has-image {
    display: flex;
}

.c-product-box__item.has-image .c-product-box__item-inner::after {
    right: 1.5rem;
    bottom: 2.25rem;
}

.c-product-box__item-image img {
    width: 6.5rem;
    height: 6.5rem;
    object-fit: contain;
}

.c-product-box__item-content {
    padding-left: 1.5rem;
}

@media screen and (max-width: 59.3125em) {
    .c-product-box__item-content {
        padding-left: .75rem;
    }
}

.c-block-front-product__block-title-wrap {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.c-block-front-product__block-title-link {
    font-size: .9em;
    color: #2b487a;
    text-decoration: underline;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
}

.c-block-front-product__block-title-link:hover {
    text-decoration: none;
}

.c-block-front-product__block-title-link .c-icon-font {
    position: relative;
    top: 1px;
}

.c-product-box__item-image {
    min-width: 104px;
}

@media screen and (max-width: 59.3125em) {
    .c-product-box__item-image {
        min-width: 56px;
    }

    .c-product-box__item-image img {
        width: 3.5rem;
        height: 3.5rem;
    }

    .c-product-box__item:not(.has-image) .c-product-box__item-head-wrap {
        padding-left: 1.25rem;
    }
}

.c-block-front-product__block-list {
    gap: 0 .75rem;
}

.c-block-front-product__block-link {
    font-size: .9rem;
}

.c-block-front-product__block-button {
    margin-top: 1.5rem;
}

.c-product-page-head__image img {
    object-fit: contain;
    width: 312px;
    height: 272px;
}

@media screen and (max-width: 59.3125em) {
    .c-product-page-head__image img {
        width: 100%;
        height: 200px;
    }
}

.c-block-card__item-image img,
.c-block-normal__item-image img {
    object-fit: contain;
}

.c-product-category-head__block-image {
    height: 9rem;
}

.c-product-category-head__block-image.is-banner {
    min-width: 14rem;
    max-width: 24rem;
    width: 100%;
    height: auto;
}

@media screen and (max-width: 59.3125em) {
    .c-product-category-head__block-image.is-banner {
        max-width: 100%;
        height: 18rem;
    }
}

.c-product-category-head__block-image img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.c-block-card.is-onecolumn .c-block-card__item-image img {
    aspect-ratio: revert-layer;
}

.c-series__navs-item.is-active {
    opacity: inherit;
}

.c-product-box__item-icons {
    margin-left: revert;
}

.c-product-category-head__text p:empty {
    display: none;
}

/*.c-block-front-product__banners-item.is-pd-sm .c-block-front-product__banners-title {*/
/*    min-height: 2.5em;*/
/*}*/

/* Solution */

.c-lp-box-cases__item.is-current {
    opacity: 1;
    background: #f9fafc;
    border-color: #2b487a;
}

.c-card-case__item.is-current {
    opacity: 1;
    background: #f9fafc;
    border-color: #2b487a;
    z-index: 9;
}

.c-lp-box-cases__item.is-current::before,
.c-lp-box-cases__item.is-current::after {
    opacity: 0;
}

/* Download */

.c-forms-document-detail__images {
    margin-top: 0;
}

.c-forms-document-detail__button {
    text-align: center;
    margin-top: 2rem;
}

.c-block-front-product__banners-item.is-pd-sm {
    padding: 1rem 1.25rem;
}

.c-block-front-product__banners-item.is-pd-sm .c-block-front-product__banners-image {
    max-width: 60px;
}

.c-block-front-product__banners-item.is-pd-sm .c-block-front-product__banners-title {
    font-size: .825rem;
}

.c-download__item-images {
    background: transparent;
}

.c-product-page-head__head-new.is-eol,
.c-product-box__item-new.is-eol {
    font-size: .625rem;
    line-height: 1.2;
    color: #2b487a;
    font-weight: 700;
    border: 1px solid #2b487a;
    background: transparent;
    font-style: italic;
}

.c-download__list {
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
}

@media screen and (max-width: 59.3125em) {
    .c-download__list {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

.c-download__item {
    display: flex;
    width: 100%;
}

@media screen and (max-width: 59.3125em) {
    .c-download__item {
        /*display: block;*/
    }

    .c-download__item {
        display: block;
        text-align: center;
    }

    .c-download__item .c-list.is-icon {
        text-align: left;
    }

    .c-download__item .c-download__item-images {
        max-width: 240px;
        min-width: 240px;
        margin: 0 auto 1rem;
    }
}

.c-download__item-images {
    padding: 0 1rem;
}

.c-download__item-images img {
    aspect-ratio: 200 / 240;
}

.c-download__item .c-download__item-images {
    max-width: calc(200px + 1rem);
    min-width: 200px;
}

@media screen and (max-width: 59.3125em) {
    .c-download__item .c-download__item-images {
        max-width: 220px;
        min-width: 220px;
    }
}

.c-download__item-content {
    margin-top: 1.25rem;
    padding-left: 1rem;
}

@media screen and (max-width: 59.3125em) {
    .c-download__item-content {
        margin-top: 0;
        width: 100%;
    }
}

.c-download__item-button {
    text-align: left;
}

@media screen and (max-width: 59.3125em) {
    .c-download__item-button {
        max-width: 14rem;
        min-width: 12rem;
        text-align: center;
        margin: 1rem auto 0;
    }
}

.c-block-download__item.is-related {
    padding: 3.875rem;
}

@media screen and (max-width: 1100px) {
    .c-block-download__item.is-related {
        padding: 2.75rem;
        gap: 3rem;
    }
}

@media screen and (max-width: 59.3125em) {
    .c-block-download__item.is-related {
        padding: 1.5rem;
        text-align: center;
        gap: 1.5rem;
    }

    .c-block-download__item-text {
        font-size: .75rem;
    }
}

.c-block-download__item.is-related .c-block-download__item-image {
    min-width: 232px;
    width: 232px;
    background: transparent;
}

.c-block-download__item.is-related .c-block-download__item-image img {
    max-height: 278px;
}

/* Archive
-------------------------------------------------------------- */

/* Products */

.c-product-box__list.is-one-column {
    grid-template-columns: inherit;
}

.c-product-box__list.is-two-column {
    grid-template-columns: repeat(auto-fill, minmax(450px, 1fr));
}

body.single-cases .c-product-box__list,
body.single-blog .c-product-box__list {
    grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
}

@media screen and (max-width: 59.3125em) {
    .c-product-box__list.is-two-column {
        grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
    }
}


.c-product-box-bottom {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.c-page-top-link {
    margin-top: 1rem;
    text-align: right;
}

.c-page-top-link a {
    font-size: .85rem;
    color: #222;
}

.c-page-top-link a::after {
    content: "keyboard_arrow_up";
    font-family: "Material Icons Outlined";
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
    overflow: hidden;
    flex-shrink: 0;
    display: inline-block;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
    vertical-align: middle;
    margin-top: -2px;
}

.c-series__box {
    margin-bottom: 3.5rem;
}


/* 20250311 Hotprofile対応 */

/* フォーム全体のスタイル */
.inquiry-form {
    margin: auto;
    padding-top: 0px !Important;
    background: #fff;
}

/* フィールドセットのグリッドレイアウト */
.inquiry-form .columns {
    margin-top: 2rem;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
}

/* 各フォーム項目 */
.inquiry-form fieldset.column {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 0.5rem;
    margin: 0;
    padding: 0;
    border: none;
}

/* フォーム項目タイトル */
.inquiry-form legend {
    display: flex;
    gap: 1.25rem;
    align-items: baseline;
    font-size: 1rem;
    line-height: 1.6875;
    width: 100%;
    padding: 0;
}

/* 必須ラベル */
.inquiry-form .required {
    display: block;
    min-width: 2.5625rem;
    padding: 0.0625rem 0.5rem;
    border-radius: 2px;
    background-color: #ed4952;
    text-align: center;
    color: #fff;
    font-size: 0.75rem;
    line-height: 1.5833333333;
    font-weight: 700;
}

/* フィールド部分のコンテナ */
.inquiry-form .fields {
    width: 100%;
}

/* テキスト入力フィールド */
.inquiry-form input[type="text"],
.inquiry-form input[type="email"],
.inquiry-form input[pattern="[0-9-]*"] {
    width: 100%;
    padding: 0.8125rem 1rem 0.9375rem;
    font-size: 15px;
    line-height: 1.46666;
    color: #222;
    border: 1px solid #dee1e7;
    border-radius: 4px;
    background-color: #f9fafc;
    transition-property: color, background-color, border-color;
    transition-timing-function: ease-in-out;
    transition-duration: 0.2s;
}

.inquiry-form input[type="text"]:focus,
.inquiry-form input[type="email"]:focus,
.inquiry-form input[pattern="[0-9-]*"]:focus {
    outline: none;
    box-shadow: none;
    border-color: #0097d8;
}

/* セレクトボックス */
.inquiry-form select {
    width: 100%;
    padding: 0.8125rem 1rem 0.9375rem;
    font-size: 15px;
    line-height: 1.46666;
    color: #222;
    border: 1px solid #dee1e7;
    border-radius: 4px;
    background-color: #f9fafc;
    transition-property: color, background-color, border-color;
    transition-timing-function: ease-in-out;
    transition-duration: 0.2s;

    background-repeat: no-repeat;
    background-position: right 0.5rem center;
}

.inquiry-form select:focus {
    outline: none;
    box-shadow: none;
    border-color: #0097d8;
}

/* ラジオボタンとチェックボックス */
.inquiry-form input[type="radio"],
.inquiry-form input[type="checkbox"] {
    width: 20px;
    height: 20px;
    vertical-align: middle;
    accent-color: #2b487a;
    flex-shrink: 0;
    margin-right: 0.75rem;
}

.inquiry-form .form-select {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.inquiry-form .form-select label {
    display: flex;
    align-items: center;
    cursor: pointer;
}


/* 送信ボタン */
.inquiry-form footer.send {
    text-align: center;
    margin-top: 2rem;
}

.inquiry-form input[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 16.375rem;
    background-color: #2b487a !important;
    padding: 1.25rem 2rem;
    border: 1px solid #2b487a !important;
    font-size: 1.125rem;
    line-height: 1.611;
    font-weight: 500;
    transition: 0.3s;
    border-radius: 4px;
    cursor: pointer;
    position: relative;
}

.inquiry-form input[type="submit"]:hover {
    background-color: #3a5d9a;
}

/* 項目の文字サイズなど */
.inquiry-form p {
    margin: 0;
    font-size: 1rem;
    line-height: 1.5625;
}

.inquiry-form small {
    font-size: 0.75rem;
    line-height: 1.6666666667;
    color: #4e4e4e;
}

/* レスポンシブ対応 */
@media screen and (max-width: 46.8125em) {
    .inquiry-form {
        padding: 2rem 1rem;
    }

    .inquiry-form input[type="text"],
    .inquiry-form input[type="email"],
    .inquiry-form input[pattern="[0-9-]*"],
    .inquiry-form select {
        font-size: 16px;
        padding: 0.5625rem 0.75rem;
    }

    .inquiry-form input[type="submit"] {
        font-size: 0.8125rem;
        line-height: 1.6153846154;
        padding: 1.0625rem 1rem;
        max-width: 100%;
    }

    .inquiry-form .form-select {
        flex-direction: column;
    }
}

.inquiry-form ::placeholder {
    color: rgba(34, 34, 34, .3);
}

.inquiry-form .send input {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    text-align: center !important;
    color: #fff;
    text-decoration: none;
    width: 100%;
    max-width: 16.375rem;
    background: #2b487a !important;
    padding: 1.25rem 2rem 1.25rem 1.5rem;
    border: 1px solid #2b487a;
    font-size: .875rem;
    line-height: 1.5714285714;
    --letter-spacing: 0.05em;
    font-weight: bold;
    transition: .3s;
    z-index: 1;
    box-shadow: none !important;
}

.inquiry-form .send input::after {
    content: "chevron_right";
    font-family: "Material Icons Outlined";
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
    overflow: hidden;
    flex-shrink: 0;
    display: inline-block;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 0;
    right: 1rem;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.inquiry-form .send input::before {
    content: none;
}

.inquiry-form .send input {
    max-width: 100%;
    font-size: 1.125rem;
    line-height: 1.6111111111;
    --letter-spacing: 0.05em;
    font-weight: 500;
    justify-content: center;
    border-radius: 4px;
    overflow: hidden;
    text-shadow: none !important;
}

.inquiry-form .send input::after {
    position: static;
    content: "chevron_right";
    font-family: "Material Icons Outlined";
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
    overflow: hidden;
    flex-shrink: 0;
    display: inline-block;
    width: 1em;
    height: 1em;
    font-size: 22px;
    margin: 0 0 0 .375rem;
}

.inquiry-form .fields label[for*='item'] {
    margin-right: 1em;
}

.inquiry-form.confirm .send {
    display: flex;
    justify-content: space-between;
    gap: 2em;
}

.inquiry-form .send input[name="cancel"] {
    background: #fff !important;
    color: #2b487a !important;
    border: 1px solid #2b487a !important;
}

.inquiry-form.confirm .send input {

}

@media screen and (max-width: 46.8125em) {
    .inquiry-form .send input {
        font-size: .8125rem;
        line-height: 1.6153846154;
        padding: 1.0625rem 1rem 1.0625rem 1.5rem;
        max-width: inherit;
    }
}

.inquiry-form dl {
    display: block;
}

.inquiry-form dl dt {
    display: flex;
    width: 100% !important;
}

.inquiry-form dl dt .required {
    width: auto !important;
}

.inquiry-form select {
    height: auto !important;
}

.inquiry-form dl dt {
    gap: 1.25rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: start !important;
}

.inquiry-form dl dt .required {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.inquiry-form textarea {
    border-radius: 2px;
    background-color: #f9f8f7;
    background: #f9fafc;
    padding: .75rem 1rem .875rem;
    border-radius: 4px;
}

.inquiry-form .fields p {
    font-size: .75rem;
    line-height: 1.6666666667;
    --letter-spacing: 0.05em;
    color: #4e4e4e;
    margin-bottom: 10px;
}


/* ProductsCategory */

.c-series__box {
    margin: 1.5rem 0 2.5rem;
    padding: 0;
    background: transparent;
}

.c-series__navs-item {
    border: 1px solid #dee1e7;
}

.c-series__navs-item:hover {
    opacity: .5;
    transition: .25s;
}

.c-series__navs-item.is-active {
    background: #2b487a;
    color: #fff;
}

.c-series__navs-item > span {
    font-weight: bold;
    border-left: 6px solid #2b487a;
    padding-left: 10px;
}

.c-series__navs-item.is-active > span {
    border-left: 6px solid #fff;
}

@media screen and (min-width: 46.8126em) {
    .c-block-message__box {
        gap: 5rem;
        grid-template-columns: 24.5rem 1fr;
    }
}


/* English */

body.en {
    font-style: italic;
}

body.en .l-header__sub-link {
    font-size: 12px;
     opacity: 1;
    font-weight: 500;
}

body.en .l-header__sub-link:hover {
     opacity: .7;
    transition: .4s;
}

body.en .l-header__main-link {
    font-size: min(15 / 1400 * 100vw, 1rem);
}

body.en .c-special-megamenu__parents-link {
    font-size: .9rem;
}

/* Home */

body.en .c-heading.is-xlg-home span.is-lg {
    font-size: 3rem;
}

body.en .c-heading.is-md-home {
    font-size: 2.25rem;
}

@media screen and (max-width: 59.3125em) {
    body.en .c-heading.is-xlg-home span.is-lg {
        font-size: 1.8rem;
    }

    body.en .c-heading.is-md-home {
        font-size: 1.5rem;
    }

    /*.c-main-visual {*/
    /*    padding-bottom: 2rem;*/
    /*}*/
}

body.en .c-block-vision__item-title,
body.en #growp-editor-wrapper .c-block-vision__item-title {
    min-width: 19rem;
    max-width: 19rem;
}

@media screen and (max-width: 59.3125em) {
    body.en .c-block-vision__item-title,
    body.en #growp-editor-wrapper .c-block-vision__item-title {
        min-width: auto;
        max-width: 100%;
    }
}

/*body.en .c-block-front-product__searchs-title,*/
/*body.en #growp-editor-wrapper .c-block-front-product__searchs-title {*/
/*    font-size: .8rem;*/
/*}*/

body.en .c-float-nav__link {
    width: 87px;
    padding: .65rem 0 .7rem;
}

body.en .c-float-nav__link-title {
    font-size: .7rem;
    line-height: 1;
    --letter-spacing: .1em;
    font-weight: 700;
    writing-mode: inherit;
    text-orientation: inherit;
}

body.en .c-float-nav {
    top: auto;
    bottom: 10rem;
    display: inherit;
}

@media screen and (max-width: 59.3125em) {
    body.en .c-float-nav {
        display: none;
    }
}

body.en .l-offer__item {
    justify-content: center;
    align-items: center;
}

body.en .l-offer__item-title {
    font-weight: 500;
}

body.en .l-offer__item-icon {
    display: flex;
    align-items: center;
}

@media screen and (max-width: 59.3125em) {
    body.en .l-offer__list {
        grid-template-columns: 1fr;
    }
}

body.en .c-document-banner__banner-content {
    width: 100%;
}

body.en .l-header__logo {
    width: min(289 / 1400 * 100vw, 269px);
}

@media screen and (max-width: 59.3125em) {
    body.en .l-header__logo {
        width: 188px;
    }
}

body.en .l-footer__head-logo {
    width: 269px;
}

@media screen and (max-width: 59.3125em) {
    body.en .l-header__logo {
        width: 235px;
    }
}

@media screen and (min-width: 59.3126em) {
    body.en .c-block-news__link-label {
        min-width: 7rem;
    }
}
