/* General Settings */
:root {
  --container-width: 100%; /* 初期値（モバイル） */
  --heading-font-family: var(--body-font-family) !important;
  --heading-font-weight:600;
  --heading-font-style: unset;
  --heading-line-height:1.5;
  --heading-letter-spacing:0.01em;
}

@media (min-width: 576px) {
  :root {--container-width: 540px;}
}
@media (min-width: 768px) {
  :root {--container-width: 720px;}
}
@media (min-width: 992px) {
  :root {--container-width: 960px;}
}
@media (min-width: 1200px) {
  :root {--container-width: 1140px;}
}
@media (min-width: 1400px) {
  :root {--container-width: 1320px;}
}
/* Post list */
ul.mod-articlescategory.category-module.mod-list li {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
    padding: .5rem 1rem;
}

ul.mod-articlescategory.category-module.mod-list li:not(:last-child) {
    border-bottom: solid 1px #aaa;
}

ul.mod-articlescategory.category-module.mod-list span.mod-articles-category-category a {
    font-size: 0.875rem;
    line-height: 1rem;
    padding: 3px 10px;
    color: var(--color-primary);
    background: #eee;
}

/* Common Parts */
body{
  overflow-x: hidden;
}
section {
    padding-block: var(--spacing-xl);
}
section.alignfull {
    padding-left: calc(50svw - 50%);
    padding-right: calc(50svw - 50%);
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
section.narrow {
    max-width: 960px;
    margin-inline: auto;
}
/* button */
a.btn+a.btn {
    margin-inline-start: .5em;
}
/* 管理画面・CSS */
.mceContentBody img {
    max-width: 100% !important;
    height: auto;
}

/* モジュール編集ボタン */
.jmoddiv{
  position:relative;
}
.jmoddiv a.jmodedit {
    background: #c7c7c7 !important;
  z-index:1000;
}

.jmoddiv a.jmodedit span.icon-edit::before {
    font-size:16px;
    content: "\f1b2";
}
/* 記事に枠線をつける */
.item-page,
.item-content {
    position: relative;
}
.item-page:has(.edit-link)::after,
.item-content:has(.edit-link)::after {
    content: '';
    display: block;
  top: 2px;
    left: 0;
    width: 100%;
    height: calc(100% - 2px);
    outline: dashed 2px var(--t4-red);
    opacity: 0;
    z-index: 100;
    position: absolute;
    pointer-events: none;
    transition:.5s;
}
.item-page:has(.edit-link)::after{
  outline-color:var(--t4-orange);
}
.item-page:has(.edit-link):hover::after,
.item-content:has(.edit-link):hover::after {
    opacity: 1;
}

/* 記事編集ボタン */
.item-content .edit-link {
    /* position: relative; */
}
.item-page .edit-link a,
.item-content .edit-link a {
    position: absolute;
  top: 0;
    right: 0;
    background: var(--t4-red);
    color: #fff;
    border-radius: 3px;
    z-index: 1000;
  padding: 0;
    height: 30px;
    width: 30px;
    line-height: 1;
  font-size:0;
      display: grid;
    justify-content: center;
    align-content: center;
}
.item-page .edit-link a{
    background: var(--t4-orange);
}
.item-page .edit-link a span.icon-edit::after,
.item-content .edit-link a span.icon-edit::after {
    content: "\f303";
    font-size:16px;
    font-family: 'FontAwesome';
    display: block;
}

.item-page .edit-link a:has(.fa-lock),
.item-content .edit-link a:has(.fa-lock){
    background:gray;
    pointer-events:none;
}

.item-page .edit-link a:has(.fa-lock)::after,
.item-content .edit-link a:has(.fa-lock)::after{
    content:'\f023';
    font-size:16px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

/* JCE Mediabox ポップアップ */
a.wf-zoom-image {
    border: solid 1px #aaa;
    background: #fff;
    overflow:hidden;
    transition:.3s;
}
.wf-zoom-image img {
    border-radius: 0;
    object-fit: contain;
    transition:.3s;
}
a.wf-zoom-image:hover {
    filter: brightness(0.9);
}
a.wf-zoom-image:hover img {
    scale: 1.1;
}
.wf-icon-zoom-image svg {
    background: #ffffff;
    padding: 4px;
    fill: #000 !important;
    scale: 1.2;
}


/* footer admin bar */
div#t4-footnav.AdminBar {
    width: fit-content;
  z-index: 500;
}
div#t4-footnav .t4-section-inner {
    padding: 10px;
}
div#t4-footnav ul#usermenu {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}
div#t4-footnav.AdminBar nav.navbar {
  padding-block: 0;
}
div#t4-footnav.AdminBar a.nav-link {
    padding: 0;
}

/* Header */
div.topbar {
    background: #eee;
}
div.topbar .t4-section-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#h1title {
    font-size: 14px;
    font-weight: normal;
    margin: 0;
    color: #999;
}
.t4-header {
    background: none;
}
#t4-header .navbar-brand {
    padding-block: 1em;
}
@media (min-width: 1200px) {
  #t4-header span#triggerButton {
    display: none;
  }
}


/* メニュー管理リンク */
/* メニュー管理リンク */
div#t4-masthead-append {
    position: relative;
    z-index: 1000;
}
div#t4-masthead-append .t4-section-inner {
    position: absolute;
    right: 0;
    top: 10px;
}
