:root{--mmi-accent:#ff3706;--mmi-border:#eeeeee;}
html,body{margin:0;padding:0;background:#fff;}
body{line-height:1.4;color:#000;}
body .site,body .site-content,body .content-area,body .site-main{max-width:none!important;margin:0!important;padding:0!important;}
#page,#masthead,#site-navigation,.site-footer{display:none!important;}

.mmi-site{font-family:Arial,Helvetica,sans-serif;color:#000;font-size:12px;width:945px;max-width:calc(100% - 30px);margin:0 auto;}
.mmi-site a{color:#000;text-decoration:underline;}
.mmi-site a:hover{text-decoration:none;}

.mmi-header{height:109px;padding-left:10px;padding-top:27px;box-sizing:content-box;display:flex;justify-content:space-between;align-items:flex-start;}
.mmi-logo{height:109px;width:501px;max-width:55%;}
.mmi-logo a{display:block;height:70px;width:461px;max-width:100%;}
.mmi-logo img{display:block;max-width:100%;height:auto;}
.mmi-head-banner{margin-left:auto;}
.mmi-head-banner img{display:block;max-width:100%;height:auto;}

.mmi-menu{height:50px;border-bottom:1px solid var(--mmi-border);clear:both;}
.mmi-cats{list-style:none;margin:0;padding:0 0 0 10px;display:flex;align-items:flex-start;visibility:visible;}
.mmi-cats>li{line-height:50px;margin-right:25px;white-space:nowrap;}
.mmi-cats a,.mmi-cats button{font:inherit;color:#000;background:none;border:0;padding:0;line-height:49px;text-decoration:none;cursor:pointer;}
.mmi-cats a:hover,.mmi-cats a.active,.mmi-cats button:hover{border-bottom:1px solid var(--mmi-accent);}
.mmi-mobile-menu-button{display:none;}

.mmi-panel{width:945px;max-width:100%;overflow:hidden;padding:0;border-bottom:1px solid var(--mmi-accent);box-sizing:border-box;}
.mmi-panel-grid{list-style:none;margin:15px 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 22px;}
.mmi-panel-grid li{font-size:11px;line-height:20px;min-height:20px;}
.mmi-panel-grid li a{text-decoration:none;display:block;border-top:1px solid #fff;border-bottom:1px solid #fff;padding:0 10px;}
.mmi-panel-grid li a:hover{border-color:var(--mmi-accent);}
.mmi-panel-grid .children{margin:0;padding-left:14px;list-style:none;}
.mmi-search-panel{padding-bottom:15px;}

.mmi-main{overflow:hidden;min-height:1px;}
.mmi-grid{list-style:none;margin:0;padding:0;column-count:3;column-gap:15px;}
.mmi-card{display:inline-block;width:100%;margin:0 0 15px;position:relative;break-inside:avoid;vertical-align:top;}
.mmi-preview{position:relative;}
.mmi-preview>a>img{display:block;width:100%;height:auto;}
.mmi-card-overlay{display:none;position:absolute;inset:0;padding:15px;box-sizing:border-box;overflow:auto;}
.mmi-card:hover .mmi-preview>a>img{opacity:.1;}
.mmi-card:hover .mmi-card-overlay{display:block;}
.mmi-card-overlay h2{font-size:21px;line-height:1.2;margin:0 0 15px;font-weight:normal;}
.mmi-card-overlay h2 a{text-decoration:none;}
.mmi-card-overlay .postmetadata{color:#555;font-size:11px;margin-top:20px;}
.mmi-card-overlay .postmetadata a{color:var(--mmi-accent);}
.mmi-archive-title{font-size:23px;font-weight:normal;margin:15px 15px 20px;}

.mmi-pagination{clear:both;margin:15px 0 25px;}
.mmi-pagination .nav-links{display:flex;gap:3px;}
.mmi-pagination a,.mmi-pagination span{line-height:25px;padding:5px 7px;text-decoration:none;color:#555;}
.mmi-pagination .current,.mmi-pagination a:hover{border-bottom:1px solid var(--mmi-accent);}

.mmi-single-layout{display:flex;flex-direction:row-reverse;align-items:flex-start;}
.mmi-sidebar{width:205px;padding:15px 0 15px 30px;flex:0 0 235px;box-sizing:border-box;}
.mmi-sidebar ul{list-style:none;margin:0;padding:0;}
.mmi-sidebar h2{font-size:17px;font-weight:normal;margin:0 0 15px;}
.mmi-sidebar li{padding-bottom:15px;}
.mmi-sidebar li li{padding:0;}
.mmi-single-main{width:710px;max-width:calc(100% - 235px);}
.mmi-single-main h1{font-size:23px;font-weight:normal;margin:15px 0;}
.mmi-single-main .article{padding:0 0 15px;}
.mmi-single-main .article p{margin:0 0 15px;}
.mmi-single-main .article img{max-width:100%;height:auto;}
.mmi-single-main .article h2{font-size:20px;font-weight:normal;padding-bottom:13px;}
.mmi-single-main .article h3{font-size:17px;font-weight:normal;padding-bottom:11px;}
.mmi-single-main .postmetadata{font-size:11px;color:#555;padding:0 0 15px;}
.mmi-single-main .postmetadata a{color:var(--mmi-accent);text-decoration:none;}

.mmi-page-entry{overflow:hidden;}
.mmi-page-entry>h1{font-size:23px;font-weight:normal;margin:15px 0;float:left;width:145px;}
.mmi-page-entry>.article{padding-top:15px;padding-left:160px;}
.mmi-page-entry>.article img{max-width:100%;height:auto;}
.mmi-page-entry>.article h2{font-size:20px;padding-bottom:15px;}
.mmi-page-entry>.article h3{font-size:17px;padding-bottom:15px;}

#searchform{display:flex;gap:8px;align-items:center;}
#searchform #s{border:1px solid #eee;padding:15px 10px;font-size:23px;font-family:Arial,Helvetica,sans-serif;color:#555;width:100%;box-sizing:border-box;}
#searchform #s:focus{border-color:var(--mmi-accent);outline:none;}
#searchsubmit{border:0;background:#eee;height:40px;padding:0 15px;cursor:pointer;}
#searchsubmit:hover{background:var(--mmi-accent);color:#fff;}

.mmi-footer{padding:25px 10px 20px;border-top:1px solid var(--mmi-border);clear:both;text-align:center;}
.mmi-footer-banner{margin-bottom:10px;}
.mmi-footer-banner img{max-width:100%;height:auto;}
#copyright{text-align:center;margin-bottom:20px;}

.alignleft,img.alignleft{margin-right:1.5em;float:left;}
.alignright,img.alignright{margin-left:1.5em;float:right;}
.aligncenter,img.aligncenter{margin-left:auto;margin-right:auto;display:block;clear:both;}

@media(max-width:760px){
  .mmi-site{width:auto;max-width:none;margin:0 15px;font-size:12px;}
  .mmi-header{height:auto;padding:15px 0;display:block;}
  .mmi-logo{width:auto;max-width:100%;height:auto;margin-bottom:12px;}
  .mmi-logo a{width:auto;height:auto;}
  .mmi-head-banner img{max-width:100%;}
  .mmi-menu{height:auto;}
  .mmi-mobile-menu-button{display:block;width:100%;height:42px;border:0;background:#eee;text-align:left;padding:0 12px;font:inherit;cursor:pointer;}
  .mmi-cats{display:none;padding:0;flex-direction:column;border-top:1px solid #eee;}
  .mmi-cats.is-open{display:flex;}
  .mmi-cats>li{width:100%;margin:0;line-height:38px;border-bottom:1px solid #eee;}
  .mmi-cats a,.mmi-cats button{display:block;width:100%;line-height:38px;text-align:left;padding:0 10px;box-sizing:border-box;}
  .mmi-panel-grid{grid-template-columns:1fr;margin:10px 0;}
  .mmi-grid{column-count:2;column-gap:10px;}
  .mmi-single-layout{display:block;}
  .mmi-sidebar{width:100%;padding:15px 0;float:none;}
  .mmi-single-main{width:100%;max-width:none;}
  .mmi-page-entry>h1{float:none;width:auto;}
  .mmi-page-entry>.article{padding:0;}
}
@media(max-width:480px){
  .mmi-grid{column-count:1;}
}


/* 0.1.1 — reproduce the live /isho/ header and category matrix more faithfully. */
@media(min-width:761px){
  .mmi-site{width:945px;max-width:945px;}
  .mmi-header{
    height:109px;
    padding-left:10px;
    padding-top:27px;
    display:block;
    box-sizing:content-box;
  }
  .mmi-logo{
    float:left;
    width:501px;
    max-width:none;
    height:109px;
  }
  .mmi-logo a{
    display:block;
    width:461px;
    max-width:none;
    height:70px;
  }
  .mmi-logo img{
    width:auto;
    max-width:461px;
    height:auto;
  }
  .mmi-head-banner{float:right;margin:0;}
  .mmi-head-banner img{width:auto;height:auto;}

  /* The original theme intentionally hid this row on desktop. */
  #cats{padding-left:10px;visibility:hidden;}
  .mmi-menu{height:50px;}
  .mmi-mobile-menu-button{display:none;}
  .mmi-cats{display:block;padding:0;margin:0;list-style:none;}
  .mmi-cats>li{float:left;line-height:50px;margin-right:25px;}
  .mmi-cats a,.mmi-cats button{line-height:50px;}

  .mmi-category-matrix{
    clear:both;
    width:945px;
    overflow:hidden;
    padding:0;
    border-bottom:1px solid #ff3706;
  }
  .mmi-category-matrix>.mcol2{
    margin:15px 0;
    padding:0;
    list-style:none;
    display:grid;
    grid-template-columns:repeat(3,293px);
    column-gap:22px;
    align-items:start;
  }
  .mmi-category-matrix li{
    list-style:none;
    font-size:11px;
    line-height:20px;
    min-height:20px;
    margin:0;
    padding:0;
  }
  .mmi-category-matrix>ul>li{
    width:293px;
  }
  .mmi-category-matrix a{
    display:inline;
    color:#000;
    text-decoration:none;
    padding:0 10px;
  }
  .mmi-category-matrix .children{
    list-style:none;
    margin:0;
    padding:0 0 0 15px;
  }
  .mmi-category-matrix .children li{width:auto;}
  .mmi-category-matrix a:hover{color:#ff3706;}

  /* Legacy Imbalance used three independent 300px columns. */
  .mmi-grid{
    display:grid;
    grid-template-columns:repeat(3,300px);
    column-gap:15px;
    align-items:start;
    column-count:initial;
  }
  .mmi-card{width:300px;margin:0 0 15px;}
  .mmi-card .mmi-preview>a>img{width:300px;height:auto;}
}

/* Keep the always-visible category index on mobile, but stack it. */
@media(max-width:760px){
  #cats{visibility:visible;}
  .mmi-category-matrix{border-bottom:1px solid #ff3706;}
  .mmi-category-matrix>.mcol2{
    list-style:none;
    margin:12px 0;
    padding:0;
    display:block;
  }
  .mmi-category-matrix li{list-style:none;line-height:1.8;}
  .mmi-category-matrix .children{padding-left:18px;}
}


/* 0.1.2 — closer reproduction of the current /isho/ desktop layout */
html,
body,
body.site,
body.mmi-body {
    background: #fff !important;
}

body,
#outer,
.mmi-site,
.mmi-header,
.mmi-menu,
.mmi-main,
.mmi-footer,
.mmi-category-matrix,
.mmi-single-layout,
.mmi-page-entry {
    background: #fff !important;
}

/* Remove any GeneratePress page/canvas background that can show around the child layout. */
body .grid-container,
body .site-content,
body .content-area,
body .inside-article,
body .widget,
body .site-main {
    background: transparent !important;
    box-shadow: none !important;
}

@media (min-width: 761px) {
    body {
        margin: 0 !important;
        padding: 0 !important;
    }

    .mmi-site {
        width: 945px;
        max-width: 945px;
        margin: 0 auto;
        padding: 0;
    }

    /* Current site starts the useful header content about 25px from the top. */
    .mmi-header {
        position: relative;
        height: 157px;
        padding: 25px 0 0 15px;
        margin: 0;
        box-sizing: border-box;
        border: 0;
    }

    .mmi-logo {
        float: none;
        position: absolute;
        left: 15px;
        top: 34px;
        width: 480px;
        height: 92px;
        margin: 0;
    }

    .mmi-logo a {
        width: auto;
        height: auto;
    }

    .mmi-logo img {
        display: block;
        width: auto;
        max-width: 480px;
        height: auto;
        margin: 0;
    }

    .mmi-head-banner {
        position: absolute;
        right: 0;
        top: 24px;
        float: none;
        margin: 0;
    }

    .mmi-head-banner img {
        display: block;
        width: 291px;
        max-width: 291px;
        height: auto;
    }

    /* Desktop legacy menu row is hidden on the live site; keep only its divider. */
    .mmi-menu {
        height: 1px;
        min-height: 1px;
        margin: 0;
        padding: 0;
        border: 0;
        border-bottom: 1px solid #eee;
        overflow: hidden;
    }

    .mmi-menu #cats,
    .mmi-menu .mmi-cats {
        display: none !important;
    }

    .mmi-category-matrix {
        width: 945px;
        min-height: 430px;
        margin: 0;
        padding: 16px 15px 18px;
        box-sizing: border-box;
        border-bottom: 1px solid #ff5a36;
    }

    .mmi-category-matrix > .mcol2 {
        width: 915px;
        margin: 0;
        padding: 0;
        display: grid;
        grid-template-columns: 286px 286px 286px;
        column-gap: 19px;
        align-items: start;
    }

    .mmi-category-matrix > .mcol2 > li {
        width: 286px;
        margin: 0;
        padding: 0;
        line-height: 20px;
        font-size: 12px;
    }

    .mmi-category-matrix li {
        font-size: 12px;
        line-height: 20px;
        min-height: 20px;
    }

    .mmi-category-matrix a {
        padding: 0;
        color: #000;
        text-decoration: none;
    }

    .mmi-category-matrix .children {
        margin: 0;
        padding-left: 15px;
    }

    /* Match the space between the category divider and the first image row. */
    .mmi-main {
        padding-top: 30px;
    }

    .mmi-grid {
        width: 945px;
        margin: 0;
        padding: 0;
        grid-template-columns: repeat(3, 305px);
        column-gap: 15px;
    }

    .mmi-card {
        width: 305px;
        margin: 0 0 15px;
    }

    .mmi-card .mmi-preview > a > img {
        width: 305px;
        height: auto;
    }

    .mmi-footer {
        margin-top: 25px;
        padding-top: 25px;
    }
}

@media (max-width: 760px) {
    html,
    body,
    .mmi-site {
        background: #fff !important;
    }

    .mmi-header {
        background: #fff !important;
    }
}


/* カテゴリー3列表示 */
@media (min-width: 761px) {

    .mmi-category-matrix > .mcol2 {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr);
        column-gap: 19px;
        width: 915px;
        height: auto;
        columns: auto;
    }

    .mmi-category-column {
        min-width: 0;
    }

    .mmi-category-group {
        margin: 0;
        padding: 0;
    }

    .mmi-category-group .children {
        display: block;
        margin: 0;
        padding-left: 15px;
    }
}
