
/* ==========================================================================
//サイト共通
========================================================================== */
/* 上マージン */
.mt_0{ margin-top: 0 !important; }
.mt_5{ margin-top: 5px !important; }
.mt_10{ margin-top: 10px !important; }
.mt_15{ margin-top: 15px !important; }
.mt_20{ margin-top: 20px !important; }
.mt_25{ margin-top: 25px !important; }
.mt_30{ margin-top: 30px !important; }
.mt_35{ margin-top: 35px !important; }
.mt_40{ margin-top: 40px !important; }
.mt_50{ margin-top: 50px !important; }
.mt_60{ margin-top: 60px !important; }
.mt_70{ margin-top: 70px !important; }
.mt_80{ margin-top: 80px !important; }
.mt_90{ margin-top: 90px !important; }
.mt_100{ margin-top: 100px !important; }
/* 下マージン */
.mb_0{ margin-bottom: 0 !important; }
.mb_5{ margin-bottom: 5px !important; }
.mb_10{ margin-bottom: 10px !important; }
.mb_15{ margin-bottom: 15px !important; }
.mb_20{ margin-bottom: 20px !important; }
.mb_25{ margin-bottom: 25px !important; }
.mb_30{ margin-bottom: 30px !important; }
.mb_35{ margin-bottom: 35px !important; }
.mb_40{ margin-bottom: 40px !important; }
.mb_50{ margin-bottom: 50px !important; }
.mb_60{ margin-bottom: 60px !important; }
.mb_70{ margin-bottom: 70px !important; }
.mb_80{ margin-bottom: 80px !important; }
.mb_90{ margin-bottom: 90px !important; }
.mb_100{ margin-bottom: 100px !important; }
/* 右マージン */
.mr_0{ margin-right: 0 !important; }
.mr_5{ margin-right: 5px !important; }
.mr_10{ margin-right: 10px !important; }
.mr_15{ margin-right: 15px !important; }
.mr_20{ margin-right: 20px !important; }
.mr_25{ margin-right: 25px !important; }
.mr_30{ margin-right: 30px !important; }
.mr_35{ margin-right: 35px !important; }
.mr_40{ margin-right: 40px !important; }
.mr_50{ margin-right: 50px !important; }
.mr_60{ margin-right: 60px !important; }
.mr_70{ margin-right: 70px !important; }
.mr_80{ margin-right: 80px !important; }
.mr_90{ margin-right: 90px !important; }
.mr_100{ margin-right: 100px !important; }
/* 左マージン */
.ml_0{ margin-left: 0 !important; }
.ml_5{ margin-left: 5px !important; }
.ml_10{ margin-left: 10px !important; }
.ml_15{ margin-left: 15px !important; }
.ml_20{ margin-left: 20px !important; }
.ml_25{ margin-left: 25px !important; }
.ml_30{ margin-left: 30px !important; }
.ml_35{ margin-left: 35px !important; }
.ml_40{ margin-left: 40px !important; }
.ml_50{ margin-left: 50px !important; }
.ml_60{ margin-left: 60px !important; }
.ml_70{ margin-left: 70px !important; }
.ml_80{ margin-left: 80px !important; }
.ml_90{ margin-left: 90px !important; }
.ml_100{ margin-left: 100px !important; }

/* テーブル */
.free-table01{
   width: 100%;
   border-left: solid 1px #CCC;
   border-top: solid 1px #CCC;
   margin-bottom: 1em;
}
.free-table01 th,
.free-table01 td{
   padding: .75em;
   text-align: center;
   border-right: solid 1px #CCC;
   border-bottom: solid 1px #CCC;
}
.free-table01 th{
   background-color: #f3f2f2;
}
.free-table01.clm3 td{
   width: 33.3333%;
}
.free-table01.clm4 td{
   width: 25%;
}

.small_txt{
   font-size: .8em;
}
.center_txt {
   text-align: center;
   font-size: 18px;
}
a.no_href{
   pointer-events: none;
}
a.no_href:hover{
   cursor: default;
   color: #333 !important;
}


/* ==========================================================================
// 共通
========================================================================== */

/* ==========================================================================
// ヘッダ
========================================================================== */

/* ==========================================================================
// フッタ
========================================================================== */

/* ==========================================================================
//トップページ
========================================================================== */
.home .p-news {
   background-image: url("../images/top_contents_background.jpg");
   background-position: top center;
}
.home .p-gallery {
   background-image: url("../images/top_contents_background.jpg");
   background-position: 50% 35%;
   background-repeat:repeat-y;
}
.home .p-contact {
   background-image: url("../images/top_contents_background.jpg");
   background-position: 50% 50%;
}
.c-news-card__image img {
    object-fit: cover;
}
/* 申込受付中 */
.p-cafe__item-status.entry_on {
    background-color: #639c6b;
}
/* 申込終了 */
.p-cafe__item-status.entry_off {
    background-color: #b3cf98;
}
/* イベント終了 */
.p-cafe__item-status.event_end {
    background-color: #333333;
}

.p-about__ethical-logo-item {
    text-align: center;
}
.p-about__ethical-logo-item img {
   max-height: 40px;
   object-fit: contain;
}


/* ==========================================================================
//開催概要
========================================================================== */
.p-event-header__endmessage {
   font-weight: 500;
   font-size: 1em;
   margin: 2em auto 1em;
   padding: .75em;
   background-color: #EFEFEF;
   max-width: 1200px;
   border-radius: 0.5rem;
}
.p-event-header .c-link {
   min-width: 20rem;
   padding: 1em;
   margin: 1em 0 2em;
}
.shinagawa-ethical-2025 .p-event-overview__images-main-item img {
   aspect-ratio:inherit;
}
.p-event-overview__images-sub-item{
   width: 33.3333%;
}
.p-event-detail__box-link a {
   word-break: break-all;
}
.p-event-shop__shop-genre {
    font-size: .85em;
}
.p-event-sponsor__item .p-event-sponsor__item-image img {
   max-width: 90%;
   max-height: 60px;
}
.p-event-sponsor__item {
   text-align: center;
}
.p-event-detail__venue {
   line-height: 1;
}
.p-event-detail__venue a {
   display: flex;
   align-items: center;
}
.p-event-detail__venue a img{
   height: 20px;
   padding-left: .5em;
}



/* ==========================================================================
//開催レポート
========================================================================== */
.single-report .p-event-point__item-image figcaption {
   line-height: 1.75;
}
.single-report .p-event-overview__button {
   margin: 3em 0 4em 0;
}

/* ==========================================================================
//協賛企業
========================================================================== */
.single-sponsor .p-event-overview__images-sub {
   justify-content:inherit;
}
.single-sponsor .p-sponsor__logo-item img {
   max-height: 40px;
   height: auto;
   width: auto;
}
.single-sponsor .p-sponsor__companyname {
   margin-bottom: .5em;
}
.single-sponsor .p-sponsor__companyname span img {
   height: 20px;
   padding-left: .25em;
}
.single-sponsor .p-sponsor__about {
   grid-gap: 1.625rem 6.25rem;
   display: grid;
   gap: 1.625rem 6.25rem;
   grid-template-columns: repeat(2, 1fr);
}
.single-sponsor .p-sponsor__about li:last-child{
   position: relative;
}
.single-sponsor .p-sponsor__about li:last-child::before {
   position: absolute;
   top: 0;
   left: -12%;
   margin: 0 1rem;
   content: "";
   width: 1px;
   height: 100%;
   background-color: #b3cf98;
}
.single-sponsor .p-sponsor__title {
   display: flex;
   flex-direction: column;
   font-size: 1.5rem;
   font-weight: 700;
   gap: 0.3125rem;
   position: relative;
   margin-bottom: 1em;
}
.single-sponsor .p-sponsor__title::after {
    background-color: #b3cf98;
    content: "";
    display: block;
    height: 0.25rem;
    width: 3rem;
}
.single-sponsor .p-sponsor__description {
    margin-top: 2.125rem;
}

@media screen and (max-width: 767px) {

   .single-sponsor .p-sponsor__companyname {
      font-size: 1.25rem;
   }
   .single-sponsor .p-sponsor__about {
      display: block;
   }
   .single-sponsor .p-sponsor__about li:last-child{
      border-top: solid 1px #b3cf98 ;
      margin-top: 4em;
      padding-top: 4em;
   }
   .single-sponsor .p-sponsor__about li:last-child::before {
      content:none;
   }
   .single-sponsor .p-sponsor__title {
      font-size: 1.25rem;
      line-height: 1.5;
   }
   .single-sponsor .p-sponsor__title::after {
      margin-top: .5em;
   }
}

/* ==========================================================================
NEWS
========================================================================== */
.single-post .p-event-shop__title {
   margin: 2em 0;
}
.single-post .p-event-shop__title::after {
    background-color: #ebc384;
}
.single-post .p-event-header__subtitle {
   margin-top: 0;
   margin-bottom: 1em;
}
.single-post .c-link {
   background-color: #ebc384;
   border: 0.0625rem solid #ebc384;
}
.single-post .c-link:hover {
   background-color: #fff;
   color: #ebc384;
}

/* ==========================================================================
404ページ
========================================================================== */
.error404 .notfound {
   width: 100vw;
   margin: 0;
   margin-left: calc((100vw - 100%) / 2 * -1) !important;
   margin-right: calc((100vw - 100%) / 2 * -1) !important;
   text-align: center;
}
.error404 .notfound h2 {
   margin-bottom: 1em;
}
.error404 .notfound__text {
    font-size: 18px;
    line-height: 1.93;
    letter-spacing: 0;
    font-weight: 400;
    color: #000;
    padding: 0 30px 55px;
    border-bottom: 1px solid rgba(68, 115, 109, 0.1882352941);
}
.error404 .p-event-shop__title {
   margin: 2em 0 1em;
}
.error404 .p-event-shop__title::after {
    background-color: #ebc384;
}
.error404 .c-link {
   background-color: #ebc384;
   border: 0.0625rem solid #ebc384;
}
.error404 .c-link:hover {
   background-color: #fff;
   color: #ebc384;
}

@media screen and (max-width: 768px) {
    .error404 .notfound__inner {
        padding: 0 2em;
    }
}


/* ==========================================================================
   ワードプレス
========================================================================== */

.user_edit {
   opacity: 1;
   width: 75%;
   margin: 5em auto;
}
.user_edit img {
   display: inherit;
   max-width: inherit;
   width: inherit;
   border-radius: 0.625rem;
}
.user_edit a{
   color: #2aa7ec;
}
.user_edit p{
   margin-bottom: 1.35em;
   line-height: 1.65;
}
.user_edit::after,
.user_edit p::after{
   content: " ";
   display: block;
   clear: both;
}
.user_edit ul {
   margin-left: 1.25em;
   margin-bottom: 1.25em;
   list-style: inherit;
}
.user_edit ol {
   list-style: decimal;
   margin-left: 1.25em;
   margin-bottom: 1.25em;
}
.user_edit table {
   border-top: solid 1px #DDD;
   border-right: solid 1px #DDD;
   margin: 1.5em 0;
}
.user_edit table td {
   border-bottom: solid 1px #DDD;
   border-left: solid 1px #DDD;
   padding: .65em !important;
}
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.alignleft {
  float: left;
  margin: 0 15px 15px 0;
}
.alignright {
  float: right;
  margin: 0 0 15px 15px;
}
.wp-caption {
  border: 1px solid #ddd;
  text-align: center;
  background-color: #F3F3F3;
  padding-top: 4px;
  margin: 10px;
}
.wp-caption img {
  margin: 0;
  padding: 0;
  border: 0 none;
}

.wp-caption p.wp-caption-text {
  font-size: 85.714%;
  padding: 3px 4px 5px;
  margin: 0;
}
@media screen and (max-width: 768px) {
   .user_edit {
      width: 100%;
      margin: 3em auto;
   }
   .user_edit img {
      width: 100%;
   }
   .user_edit img.alignleft,
   .user_edit img.alignright {
      width: 100%;
      margin-bottom:1em;
   }
}