/* 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;
}

/*固定ページのクラシック版段落ブロックで画像を張り替えた際のマージン防止*/
body.page img.alignnone {
    margin: 0;
}

.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 {
    margin-top: var(--wp-admin--admin-bar--height) !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;
}

.c-forms__file {
    position: relative;
}

.mwform-file-delete {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
}

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

/* Comment
-------------------------------------------------------------- */

.comment-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.comment {
    margin: 20px 0;
    padding: 15px;
    border: 1px solid #ddd;
    background-color: #f5f6fa;
}

.comment-author {
    margin-bottom: 10px;
}

.comment-meta {
    font-size: 0.8em;
    color: #666;
}

.comment-form label {
    display: block;
    margin-bottom: 5px;
}

.comment-form textarea,
.comment-form input[type="text"] {
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
}

.comment-reply-link {
    margin-top: 10px;
}

.comment-reply-link.c-button.is-sm {
    padding: 0.3rem 1.1rem;
    font-size: .75rem;
}

.comment-reply-link:after {
    display: none;
}

.comment-notes {
    font-size: .9rem;
    margin-bottom: 10px;
}

.comment-form .required {
    color: #ba0000;
}

.comment-form .logged-in-as {
    display: none;
}

.comment-form-cookies-consent {
    margin: 15px 0;
    display: flex;
}

.comment-form-cookies-consent > input {
    margin-top: 2px;
    margin-right: 5px;
}

#cancel-comment-reply-link {
    font-size: 1rem;
    margin-left: 1rem;
}

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

/*.c-breadcrumb__inner {*/
/*    white-space: nowrap;*/
/*    overflow: hidden;*/
/*    text-overflow: ellipsis;*/
/*}*/


/* 管理画面内のみ
-------------------------------------------------------------- */

#growp-editor-wrapper{
    box-sizing: border-box;
}
#growp-editor-wrapper .c-business-pege-header.is-rfid{
    background-color: #0082d2;
}
#growp-editor-wrapper textarea,.acf-input textarea{
    min-height: initial;
}
#growp-editor-wrapper .c-top-news{
    max-width: 100%;
}
.mce-object-iframe{
    display: block;
    width: 100%;
    height: 100%;
}



/* 独自ラインナップ
-------------------------------------------------------------- */

:root {
    --color-primary: #3CB140;
}

.acf-innerblocks-container{
    display: contents;
}

.l-unique-lineup :where(figure){
    margin: 0;
}

.l-unique-lineup :where(.alignnone){
    margin: 0;
}

.kami-nano .wp-block-columns{
    align-items: initial;
}

.c-block-innovation__block:not(:last-child) {
    margin-bottom: 0;
}

.wp-block-button.is-style-wide{
    flex-grow: 1;
}

.greennano .alignleft {
    margin: 0;
    float: none;
}

:where(.wp-block-columns){
    margin-bottom: 1em;
}
:root :where(.is-layout-flow) > * {
    margin-block-start: 1em;
}
@media screen and (max-width: 59.3125em) {
    .greennano .is-layout-flex {
        display: flex;
    }
    .greennano :where(.l-post-content) .is-layout-flex {
        display: block;
    }

    .c-block-innovation__image:has(.wp-block-image.u-hidden-md:only-child){
        display: none;
    }
}


body:not(:has(#growp-editor-wrapper)) .c-block-innovation__image .wp-block-image{
    display: contents;
}



/* oEmbed content
-------------------------------------------------------------- */

.c-embed{
    font-size: 1em;
    line-height: 1.6;
    border: solid 1px #0a285a;
    padding: 2em 1em;
}
.c-embed__heading{
    font-weight: bold;
    margin-bottom: 0.5em;
}

/* TOC
-------------------------------------------------------------- */

.toc_brackets{
    display: none;
}

.toc_number.toc_depth_1::after{
    content: ".";
}


#toc_container .toc_title{
    display: flex;
    justify-content: space-between;
    padding-left: 1rem;
    color: #0a285a;
    font-size: clamp(.625rem, 1.7142857143vw, 1.7142857143rem);
}

@media screen and (max-width: 59.3125em) {
    #toc_container .toc_title{
        font-size: 5.3333333333vw;
        padding-left: 0;
    }
}

#toc_container .toc_list li a{
}

@media screen and (max-width: 59.3125em) {
    #toc_container .toc_list li a{
        padding-left: 0;
    }
}

#toc_container .toc_list > li{
    margin-top: 1rem;
}

#toc_container .toc_list > li >a {
    font-weight: bold;
    font-size: 1rem;
}

#toc_container .toc_list > li li{
    margin-top: 0;
}
#toc_container .toc_list > li li a{
    font-size: 0.875rem;
    position: relative;
    line-height: 1.5;
    padding-block: 0.25em;
    padding-left: 2rem;
}

@media screen and (max-width: 59.3125em) {
    #toc_container .toc_list > li li a{
        padding-left: 1rem;
    }
}

#toc_container .toc_list > li li a::before{
    position: absolute;
    content:"";
    width: 0.6em;
    aspect-ratio: 1;
    background-color: #0082d2;
    display: inline-block;
    border-radius: 50%;
    top: 0.8em;
    left: 1.25rem;
}

@media screen and (max-width: 59.3125em) {
    #toc_container .toc_list > li li a::before{
        left: 0.25rem;
    }
}





/* コンテンツ
-------------------------------------------------------------- */

/* wbr で適切に改行されるように */
.u-wbr-accept{
    word-break: keep-all;
    overflow-wrap: anywhere;
}



@media screen and (max-width: 59.3125em){
    .l-two-column.is-sp-aside-show{
        display: flex;
        flex-direction: column-reverse;
        gap: 0;
    }

    .l-two-column.is-sp-aside-show :is(.l-two-column__side,.l-aside){
        display: block;
    }


    .c-menu-list__list{
        display: flex;
        flex-wrap: wrap;
        gap:4px clamp(0.8125rem, 3vw, 1rem);
    }
    .c-menu-list__list a{
        font-size: clamp(0.8125rem, 3vw, 1rem);
        padding-left: clamp(0.8125rem, 3vw, 1rem);
    }
    .c-menu-list__list a::before{
        width: 0.6em;
        height: 0.6em;
    }
}


.c-card__card.swiper-slide{
    height: auto;
}

.l-post-content .wp-block-button__link{
    color: #fff;
    text-decoration: none;
}

.l-post-content .wp-block-button__link:hover{
    color: #0a285a;
}

.c-business-rfid-page-header__content{
    flex-grow: 1;
}


.c-forms__privacy-recaptcha {
    width: fit-content;
    margin: 0 auto;
    max-width: 100%;
}
.c-forms__title {
    font-weight: 700;
}
@media screen and (max-width: 59.3125em) {
    .c-forms__title {
        display: block;
        position: relative;
        padding-right: 28px;

    }
    .c-forms__title small {
        display: block;
    }
    .c-forms__label {
        position: absolute;
        top: 4px;
        right: 0;
    }
}

@media (hover:hover){
    .c-serch-block label:hover span {
        opacity: 0.5;
    }
}

@media screen and (max-width: 46.8125em) {
    .c-forms__title:has(small) {
        flex-wrap: wrap;
        gap: 0 8px;
        position: relative;
    }
    .c-forms__title:has(small) .c-forms__label {
        position: absolute;
        top: 5px;
        right: 0;
    }
}


label.c-serch-block__lable{
    padding: 0;
    border: 0;
}
.c-serch-block label:hover span {
    background-color: revert-layer;
    color: revert-layer;
}
