/* WordPressエディタコンテンツ用スタイル */

/* 段落 */
.wp__contents p:not(:last-child) {
    margin-bottom: 1em;
}

.wp__contents p:only-child {
    margin-bottom: 0;
}

/* ========================================
   基本レイアウト
======================================== */

/* コンテンツエリア */

/* .wp__contents .wp-block-group {
    overflow: hidden;
} */


.wp__contents .wp-block-group.post-section-group p:not(:first-child),
.wp__contents .wp-block-columns.post-section-group p:not(:first-child) {
    margin: 0 0 1em 0;
}

.wp__contents .wp-block-group.post-section-group p:last-child,
.wp__contents .wp-block-columns.post-section-group p:last-child {
    margin: 0;
}

.wp__contents .foot-banner {
    margin: 8em 0;
}



.point {
    gap: 40px;
}

.point-txt {
    width: 6em;
    background: orange;
    padding: .5em;
    border-radius: 20px;
    text-align: center;
}

.point-desc {
    width: calc(100% - 6em);
}

.tag-percent-box>p {
    margin-bottom: 0 !important;
}

.tag-percent {
    border-radius: 20px;
    padding: 0.2em 1em;
    font-weight: bold;

    &::after {
        content: "%";
        display: inline-block;
        font-size: 0.8em;
    }
}

/* flow */
.flow-group .flow-head {
    width: 200px;
    border-radius: 10px;
    text-align: center;
    padding: .5em;
    margin: 0 1em 0 0;
}

/* border-content */
.border-content {
    border-width: 3px;
    border-style: solid;
    border-radius: 20px;
    overflow: hidden;
}

.border-content_box {
    padding: 2em 2em;
}

.border-color-green {
    border-color: #009944;
}

.border-color-blue {
    border-color: #0693e3;
}

/* image-addition */
.wp__contents .wp-block-column>.addition-text {
    margin-bottom: 0;
    padding: .5em;
    text-align: center;
}


/* より具体的な横並びレイアウトブロック */
.wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-columns"] p,
.wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-group"] p,
.wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-cover"] p,
.wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-media-text"] p,
.wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-column"] p {
    margin: 0;
}

/* width */
.w-100 {
    width: 100%;
    height: auto;
}

/* ========================================
   カラー
======================================== */
.color-white {
    color: #fff !important;
}

.color-green {
    color: #009944 !important;
}

.color-blue {
    color: #0693e3 !important;
}

.color-orange {
    color: #ff893a !important;
}

.bg-green {
    background-color: #009944 !important;
}

.bg-blue {
    background-color: #0693e3 !important;
}



/* ========================================
   リスト
======================================== */

/* 順序なしリスト */
.wp__contents ul.wp-block-list {
    list-style: disc;
    /* margin: 1.5em 0; */
    padding-left: 2em;
}

.wp__contents ol.wp-block-list {
    list-style: decimal;
    /* margin: 1.5em 0; */
    padding-left: 2em;
}

.wp__contents .wp-block-list li {
    margin-bottom: 0.5em;
    position: relative;
}

/* 順序付きリスト */
.wp__contents ol {
    margin: 1.5em 0;
    padding-left: 2em;
    list-style: list-counter;
}

.wp__contents ul {
    list-style: disc;
}

.wp__contents ol li {
    margin-bottom: 0.5em;
    counter-increment: list-counter;
    position: relative;
}



/* ========================================
   リンク
======================================== */

.wp__contents a {
    text-decoration: none;
    transition: all 0.3s ease;
}

.no-underline,
.no-underline a {
    text-decoration: none !important;
    border-bottom: none !important;
}

.pdf-link::after {
    content: "PDF";
    display: inline-block;
    vertical-align: middle;
    background-size: contain;
    color: #cf2e2e;
    border: 1px solid #cf2e2e;
    padding: 0.1em 0.5em;
    margin-left: 0.5em;
}

.pdf-table {
    margin-bottom: 0;
}

.pdf-table tr:nth-child(even) {
    background: #f5f5f5;
}

.pdf-table tr th,
.pdf-table tr td {
    border: 1px solid #e9ecef;
}

/* ========================================
   画像
======================================== */

/* 画像の基本スタイル */
.wp__contents img {
    max-width: 100%;
    height: auto;
    display: inline;
}

/* 画像の配置（回り込みなし） */
.wp__contents .alignleft {
    display: block;
    margin: 1em auto 1em 0;
    max-width: 50%;
}

.wp__contents .alignright {
    display: block;
    margin: 1em 0 1em auto;
    max-width: 50%;
}

/* 管理画面（エディタ）での回り込み防止 - より強力なルール */
.interface-interface-skeleton__html-container {
html :where(.wp-block)[data-align=left]>*,html :where(.wp-block)[data-align=right]>* {
    float: none !important;
    height: max-content;
}
}

/* ========================================
   印刷用スタイル
======================================== */

@media print {
    /* 段落 */
    .wp__contents p:not(:last-child) {
        margin-bottom: 1em;
    }

    .wp__contents p:only-child {
        margin-bottom: 0;
    }

    /* ========================================
       基本レイアウト
    ======================================== */

    .wp__contents .wp-block-group.post-section {
        margin: 4em 0;
    }

    .wp__contents .wp-block-group.post-section-group,
    .wp__contents .wp-block-columns.post-section-group {
        margin: 3em 0;
    }

    .wp__contents .wp-block-group.post-section-group p:not(:first-child),
    .wp__contents .wp-block-columns.post-section-group p:not(:first-child) {
        margin: 0 0 1em 0;
    }

    .wp__contents .wp-block-group.post-section-group p:last-child,
    .wp__contents .wp-block-columns.post-section-group p:last-child {
        margin: 0;
    }

    .wp__contents .foot-banner {
        margin: 8em 0;
    }

    .point {
        gap: 40px;
    }

    .point-txt {
        width: 6em;
        background: orange;
        padding: .5em;
        border-radius: 20px;
        text-align: center;
    }

    .point-desc {
        width: calc(100% - 6em);
    }

    .tag-percent-box>p {
        margin-bottom: 0 !important;
    }

    .tag-percent {
        border-radius: 20px;
        padding: 0.2em 1em;
        font-weight: bold;
    }

    .tag-percent::after {
        content: "%";
        display: inline-block;
        font-size: 0.8em;
    }

    /* flow */
    .flow-group .flow-head {
        width: 200px;
        border-radius: 10px;
        text-align: center;
        padding: .5em;
        margin: 0 1em 0 0;
    }

    /* border-content */
    .border-content {
        border-width: 3px;
        border-style: solid;
        border-radius: 20px;
        overflow: hidden;
    }

    .border-content_box {
        padding: 2em 2em;
    }

    .border-color-green {
        border-color: #009944;
    }

    .border-color-blue {
        border-color: #0693e3;
    }

    /* image-addition */
    .wp__contents .wp-block-column>.addition-text {
        margin-bottom: 0;
        padding: .5em;
        text-align: center;
    }

    /* より具体的な横並びレイアウトブロック */
    .wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-columns"] p,
    .wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-group"] p,
    .wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-cover"] p,
    .wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-media-text"] p,
    .wp__contents .wp-block-group.is-layout-flex.wp-block-group-is-layout-flex [class*="wp-block-column"] p {
        margin: 0;
    }

    /* width */
    .w-100 {
        width: 100%;
        height: auto;
    }

    /* ========================================
       カラー
    ======================================== */
    .color-white {
        color: #000 !important;
    }

    .color-green {
        color: #000 !important;
    }

    .color-blue {
        color: #000 !important;
    }

    .color-orange {
        color: #000 !important;
    }

    .bg-green {
        background-color: #fff !important;
    }

    .bg-blue {
        background-color: #fff !important;
    }

    /* ========================================
       リスト
    ======================================== */

    /* 順序なしリスト */
    .wp__contents ul.wp-block-list {
        list-style: disc;
        padding-left: 2em;
    }

    .wp__contents ol.wp-block-list {
        list-style: decimal;
        padding-left: 2em;
    }

    .wp__contents .wp-block-list li {
        margin-bottom: 0.5em;
        position: relative;
    }

    /* 順序付きリスト */
    .wp__contents ol {
        margin: 1.5em 0;
        padding-left: 2em;
        list-style: list-counter;
    }

    .wp__contents ul {
        list-style: disc;
    }

    .wp__contents ol li {
        margin-bottom: 0.5em;
        counter-increment: list-counter;
        position: relative;
    }

    /* ========================================
       リンク
    ======================================== */

    .wp__contents a {
        color: #000 !important;
        text-decoration: underline !important;
        border-bottom: 1px solid #000 !important;
    }

    .no-underline,
    .no-underline a {
        text-decoration: none !important;
        border-bottom: none !important;
    }

    .pdf-link::after {
        content: "PDF";
        display: inline-block;
        vertical-align: middle;
        background-size: contain;
        color: #000 !important;
        border: 1px solid #000 !important;
        padding: 0.1em 0.5em;
        margin-left: 0.5em;
    }

    .pdf-table {
        margin-bottom: 0;
    }

    .pdf-table tr:nth-child(even) {
        background: #f5f5f5 !important;
    }

    .pdf-table tr th,
    .pdf-table tr td {
        border: 1px solid #000 !important;
    }

    /* ========================================
       画像
    ======================================== */

    /* 画像の基本スタイル */
    .wp__contents img {
        max-width: 100% !important;
        height: auto !important;
        display: block;
        page-break-inside: avoid;
    }

    /* 画像の配置（回り込みなし） */
    .wp__contents .alignleft {
        display: block;
        margin: 1em auto 1em 0;
        max-width: 50%;
        float: none !important;
    }

    .wp__contents .alignright {
        display: block;
        margin: 1em 0 1em auto;
        max-width: 50%;
        float: none !important;
    }

    /* 管理画面（エディタ）での回り込み防止 - より強力なルール */
    .interface-interface-skeleton__html-container {
        html :where(.wp-block)[data-align=left]>*,html :where(.wp-block)[data-align=right]>* {
            float: none !important;
            height: max-content;
        }
    }
}