﻿@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.2
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/

    @import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP&display=swap');

    body {
        margin: 0;
        font-family: 'Noto Serif JP', serif;
    }
/* 
    body:before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 85vh;
        background: url(/wp-content/uploads/bg.jpg) center no-repeat;
        background-size: cover;
    } */
html {
  scroll-behavior: smooth;
}
#post-22 .article-header.entry-header {display:none;}
.entry-content {margin:0;}
.main {border:0;}    
.wrap {width:100%;}
.content {
  margin-top: 0;
}
.no-sidebar .content .main.main-l, .no-sidebar .content .main.main-r {width:50%; font-size: 14px; padding:10px;}
#loading-header {font-family: 'Noto Serif JP', serif !important;}
#log {
        background: url(/wp-content/uploads/bg.jpg) center no-repeat;
        background-size: cover;
width:100%;
height: 85vh;
position:relative;
  display: grid;
  place-content: center;
  gap: 1ch;
}
.img {display:none;}
#log img {
width:80px;
margin-top: -30px;
}
#sec1,#openday {
width:100%;
height: 600px;
position:relative;
  display: grid;
  place-content: center;
  gap: 1ch;
}
#sec2 {
padding:2% 2% 0;
display:flex;
position:relative;
flex-wrap: wrap;
}
#sec2 .s1, #sec2 .s2,#sec2 .s3,#sec2 .s4,#sec2 .s5,#sec2 .s6 {
width:50%;
height:400px;
position:relative;
/* background:#51282e; */
}

.s1:before,.s2:before,.s3:before,.s4:before,.s6:before {
content:"";
display:block;
width:100%;
height:100%;
background:rgba(0,0,0,0.5);
}

.s1 {
        background: url(/wp-content/uploads/s5.jpg) center no-repeat;
        background-size: cover;
}
.s2 {
        background: url(/wp-content/uploads/s1.jpg) center no-repeat;
        background-size: cover;
}
.s3 {
        background: url(/wp-content/uploads/2021/01/p1.jpg) center no-repeat;
        background-size: cover;
}
.s4 {
        background: url(/wp-content/uploads/s3.jpg) center no-repeat;
        background-size: cover;
}
.s5 {
        background: url(/wp-content/uploads/cbg.jpg) center no-repeat;
        background-size: cover;
}
/*.s6 {
        background: url(/wp-content/uploads/s4.jpg) center no-repeat;
        background-size: cover;
}*/


.top-card-link {
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
#sec2 > div {
  transition: opacity 0.3s ease;
}
#sec2 > div:hover {
  opacity: 0.8;
}


/**
#sec3 {
        position: relative;
        padding: 0 2% 2%;
}**/

.s5.top-s5 {height:500px;}
#sec5 .s6 {
    width:100%;
    height:500px;
    background: url(/wp-content/uploads/s6.jpg) center no-repeat;
    background-size: cover;
}

#sec4, #sec5 ,#sec6{
    position: relative;
}

#sec6 .s1 {
    width:100%;
    height:500px;
    background: url(/wp-content/uploads/s4.jpg) center no-repeat;
    background-size: cover;
}



#map {line-height: 0;}
#top-footer {
width:100%;
height:80vh;
position:relative;
  display: grid;
  place-content: center;
  gap: 1ch;
color:#fff;
background:#51282e;
font-size:16px;
}
.word {
letter-spacing: 3px;
    font-size: 17px;
    color:#51282e;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.hwt {
    font-size: 15px;
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
  letter-spacing:0;
      text-align: center;
}
.sf-ttl {
    height: 200px;
    width: 200px;
    display: grid;
    place-content: center;
    gap: 1ch;
    position: absolute;
    top: 0;
    color: #fff;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    color: #51282e;
    border: 2px solid #51282e;
    text-align: center;
}

.cntct-ttl {
    height: 90px;
    width: 340px;
    display: grid;
    place-content: center;
    gap: 1ch;
    position: absolute;
    top: 0;
    color: #fff;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    /* color: #51282e; */
    /* border: 2px solid #51282e; */
        background: #51282e;
}

.od-ttl {
    height: 150px;
    width: 80%;
    display: grid;
    place-content: center;
    gap: 1ch;
    position: absolute;
    top: 0;
    color: #fff;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 2px;
}
.ss-inner {
position: absolute;
    bottom: 20px;
    color: #fff;
    padding: 4%;
        font-size: 15px;
    letter-spacing: 1px;
    text-align: center;
    width:100%;
}
#mttp {
/* background: rgba(0,0,0,.8); */
background:#fff;
    position: relative;
    width: 100%;
    height: 0px;
    padding-top: 56.25%;
}
#mttp iframe {
position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    height: 80%;
    right: 0;
    bottom: 0;
    margin: auto;
}


#tf-logo {
text-align: center;
margin-bottom: 20%;
}
#tf-logo img {
    width: 55px;
}
.tf-in {
    text-align: center;
    margin-bottom: 10%;
    margin-top: 7%;
}
#snsl {
  text-align:center;
}
#snsl i {color:#fff;}
.footer {margin-top:0;}
.footer-center {
  text-align: center;
}

.footer-center #tf-logo {
  margin-top: 70px;
}
.header { margin-bottom: 10%; background-position: center;}
.related:before {
  content:"";
  display:block;
  clear: both;
}
.spc {padding:6%;}
.fcopyright {display: grid;
    place-content: center;
    gap: 1ch;
    position: absolute;
    bottom: 5px;
    margin: auto;
    left: 0;
    right: 0;}


.woocommerce-page .date-tags {display:none;}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {text-align:center;}
.woocommerce-store-notice {display:none;}
#slide-in-custom_html-4 .custom-html-widget a {
    padding: 4%;
    width: 90%;
    background: #51282e;
    display: inline-block;
    text-align: center;
    margin: 0 5%;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
}
.allp {
display: grid;
    place-content: center;
    gap: 1ch;
}
.allp a {
    display: inline-block;
    width: 200px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background: #51282e;
    padding: 3% 0;
    border-radius: 15px;
}


.wshop {
    background: #51282e;
    padding: 3%;
    text-align: center;
    margin-bottom: 4%;
}

.wshop a {
	text-decoration: none;
	padding: 1% 4%;
	background: #fff;
	color: #51282e;
}

.sinn {margin:5%;}
.woocommerce-Tabs-panel h2 {display:none;}
#slide-in-custom_html-5 {background: #51282e;}
#slide-in-custom_html-5 i {color:#fff;}
#slide-in-custom_html-5 .custom-html-widget {padding-bottom: 5%; text-align: center; }


#fetc {
    margin-top: 5%;
    display: flex;
    justify-content: space-around;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
#fetc a {
width: 33%;
    text-align: center;
    padding: 1% 3%;
    background: #51282e;
    text-decoration: none;
    color: #fff;
    font-size: 14px;
}
.ffetc {font-size: 13px; margin-top: 20px;}
.ffetc a {text-decoration: none;}

#top-footer .ffetc {
  font-size: 13px;
  margin-top: 20px;
  text-align: center;
  line-height: 1.9;
}

#top-footer .ffetc a {
  color: #fff;
  text-decoration: none;
}

#top-footer .ffetc a:hover {
  opacity: 0.75;
}

#top-footer .tf-in {
  text-align: center;
  margin-top: 7%;
  margin-bottom: 10%;
  color: #fff;
}



.setc {margin:5%;}
.setc a {
color:#51282e;
padding-bottom: 15px;
    display: inline-block;}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/* 1023px以下 */
@media screen and (max-width: 1023px){
  /* 必要ならここにコードを書く */
}

/* 834px以下 */
@media screen and (max-width: 834px){
  #sec2 {display:block; padding:0;}
  #sec3 {padding-left:0; padding-right:0;}
  #sec2 .s1, #sec2 .s2, #sec2 .s3 , #sec2 .s4 {
    width:100%;
  }
  main.main, div.sidebar {padding:0;}
  .no-sidebar .content .main.main-l, .no-sidebar .content .main.main-r {width:100%;}
    .article dd, .required {margin:0 0%;}
  .logo-header img {width:50px;}
  .header div.header-in, .appeal div.appeal-in {padding:10% 0;}
  /* .sidebar-menu-button.menu-button{display:none;} */
  #sup .content-in {width:100%;}
  .footer-mobile {text-align:center;}
}

/* 480px以下 */
@media screen and (max-width: 480px){
  #mttp {margin: 20px 0;}
  #mttp iframe {
    width:100%;
    height:100%;
  }
  .cntct-ttl {
    height:70px;
    width:80%;
  }
  #top-footer {height:100vh;}

  .woocommerce .woocommerce-result-count, .woocommerce-page .woocommerce-result-count,
  .woocommerce .woocommerce-ordering, .woocommerce-page .woocommerce-ordering {
      float: initial;
  }
  .woocommerce div.product form.cart .button {width:100%;}
  .summary.entry-summary {padding: 0 3%;}
}

/****event*********/
.event-detail {
  max-width: 960px;
  margin: 0 auto;
  padding: 80px 24px;
}

.event-detail__article {
  color: #2f2523;
}

.event-detail__header {
  margin-bottom: 40px;
  text-align: center;
}

.event-detail__title {
  margin: 0 0 32px;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.6;
}

.event-detail__eyecatch {
  margin: 0 auto 32px;
  max-width: 760px;
}

.event-detail__eyecatch img {
  display: block;
  width: 100%;
  height: auto;
}

.event-detail__meta {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  margin: 0 auto 24px;
  padding: 10px 18px;
  border-top: 1px solid #51282e;
  border-bottom: 1px solid #51282e;
  color: #51282e;
  font-size: 15px;
}

.event-detail__meta-label {
  font-weight: 600;
}

.event-detail__pdf {
  margin-top: 20px;
  text-align: center;
}

.event-detail__pdf a {
  display: inline-block;
  min-width: 180px;
  padding: 12px 24px;
  background: #51282e;
  color: #fff;
  text-decoration: none;
}

.event-detail__pdf a:hover {
  opacity: 0.75;
}

.event-detail__content {
  max-width: 760px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 2;
}

.event-detail__content p {
  margin: 0 0 1.6em;
}

.event-detail__eyecatch img,
.event-detail__content img {
  display: block;
  max-width: 100%;
  height: auto;
  box-shadow:
    0 8px 18px rgba(47, 37, 35, 0.08),
    0 24px 48px rgba(47, 37, 35, 0.12);
}


@media screen and (max-width: 834px) {
  .event-detail {
    padding: 48px 18px;
  }

  .event-detail__title {
    font-size: 23px;
  }

  .event-detail__meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
    box-sizing: border-box;
  }
}
.front-events {
  padding: 72px 24px;
  background: #fff;
  color: #2f2523;
}

.front-events__inner {
  max-width: 880px;
  margin: 0 auto;
}

.front-events__title {
  margin: 0 0 28px;
  color: #51282e;
  font-size: 24px;
  font-weight: 400;
  text-align: center;
}

.front-events__list {
  border-top: 1px solid rgba(81, 40, 46, 0.25);
}

.front-event-row {
  border-bottom: 1px solid rgba(81, 40, 46, 0.25);
}

.front-event-row__link {
  display: grid;
  grid-template-columns: 260px 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 18px 0;
  color: inherit;
  text-decoration: none;
}

.front-event-row__link:hover {
  opacity: 0.7;
}

.front-event-row__date {
  color: #51282e;
  font-size: 14px;
  line-height: 1.6;
}

.front-event-row__title {
  font-size: 15px;
  line-height: 1.8;
}

.front-event-row__ended {
  display: inline-block;
  min-width: 44px;
  padding: 3px 8px;
  border: 1px solid #51282e;
  color: #51282e;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
}

.front-events__empty {
  margin: 0;
  padding: 18px 0;
  border-top: 1px solid rgba(81, 40, 46, 0.25);
  border-bottom: 1px solid rgba(81, 40, 46, 0.25);
  text-align: center;
  font-size: 14px;
  line-height: 1.8;
}

.front-events__more {
  margin-top: 24px;
  text-align: right;
}

.front-events__more a {
  display: inline-block;
  color: #51282e;
  font-size: 14px;
  text-decoration: none;
  border-bottom: 1px solid #51282e;
}

.front-events__more a:hover {
  opacity: 0.75;
}

@media screen and (max-width: 834px) {
  .front-events {
    padding: 48px 18px;
  }

  .front-event-row__link {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 16px 0;
  }

  .front-event-row__ended {
    width: fit-content;
  }
}
/**event_page**/
.events-archive {
  padding: 80px 24px;
  background: #fff;
  color: #2f2523;
}

.events-archive__inner {
  max-width: 880px;
  margin: 0 auto;
}

.events-archive__header {
  margin-bottom: 36px;
  text-align: center;
}

.events-archive__title {
  margin: 0 0 24px;
  color: #51282e;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.6;
}

.events-archive__intro {
  max-width: 720px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 2;
  text-align: left;
}

.events-archive__list {
  border-top: 1px solid rgba(81, 40, 46, 0.25);
}

.event-archive-row {
  border-bottom: 1px solid rgba(81, 40, 46, 0.25);
}

.event-archive-row__link {
  display: grid;
  grid-template-columns: 260px 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 18px 0;
  color: inherit;
  text-decoration: none;
}

.event-archive-row__link:hover {
  opacity: 0.7;
}

.event-archive-row__date {
  color: #51282e;
  font-size: 14px;
  line-height: 1.6;
}

.event-archive-row__title {
  font-size: 15px;
  line-height: 1.8;
}

.event-archive-row__ended {
  display: inline-block;
  min-width: 44px;
  padding: 3px 8px;
  border: 1px solid #51282e;
  color: #51282e;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
}

.events-archive__empty {
  margin: 0;
  padding: 18px 0;
  border-top: 1px solid rgba(81, 40, 46, 0.25);
  border-bottom: 1px solid rgba(81, 40, 46, 0.25);
  text-align: center;
  font-size: 14px;
  line-height: 1.8;
}

@media screen and (max-width: 834px) {
  .events-archive {
    padding: 56px 18px;
  }

  .event-archive-row__link {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 16px 0;
  }

  .event-archive-row__ended {
    width: fit-content;
  }
}
.events-archive__pagination {
  margin-top: 36px;
  text-align: center;
}

.events-archive__pagination ul {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.events-archive__pagination a,
.events-archive__pagination span {
  display: inline-flex;
  min-width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(81, 40, 46, 0.35);
  color: #51282e;
  text-decoration: none;
  font-size: 13px;
}

.events-archive__pagination .current {
  background: #51282e;
  color: #fff;
}
/****menu*******/
.custom-front-page #header-container {
  display: block !important;
}

.custom-front-page #header {
  display: none !important;
}

.custom-front-page.content-only #footer,
.custom-front-page.content-only .footer {
  display: block !important;
}

body:not(.custom-front-page) #header {
  margin-bottom: 0;
}

body:not(.custom-front-page) #header-in {
  min-height: auto !important;
  padding: 8px 0 4px;
}

#navi.top-hero-nav {
  background: #51282E;
  border-top: 1px solid rgba(81, 40, 46, 0.15);
  border-bottom: 1px solid rgba(81, 40, 46, 0.15);
}

#navi.top-hero-nav #navi-in {
  background: transparent;
}

.top-hero-nav__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.top-hero-nav__main {
  flex: 1 1 auto;
}

.top-hero-nav__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.top-hero-nav__list > li {
  position: relative;
  width: auto;
  height: auto;
  line-height: 1.4;
  margin: 0;
}

.top-hero-nav__list > li > a {
  display: flex;
  min-height: 48px;
  height: auto;
  align-items: center;
  padding: 0 18px;
  color: #fff!important;
  font-size: 14px;
  line-height: 1.4;
  text-decoration: none;
  background: transparent;
  transition: color 0.3s ease, opacity 0.3s ease;
}

.top-hero-nav__list > li > a:hover {
  color: #E1C6CA;
  opacity: 0.7;
}

.top-hero-nav__list .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 180px;
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff;
  border: 1px solid rgba(81, 40, 46, 0.15);
  z-index: 1000;
}

.top-hero-nav__list li:hover > .sub-menu {
  display: block;
}

.top-hero-nav__list .sub-menu a {
  justify-content: flex-start;
  min-height: 42px;
  white-space: nowrap;
}

.top-lang-switcher {
  display: flex;
  align-items: center;
  gap: 6px;
}

.top-lang-switcher li {
  margin: 0;
  list-style: none;
}

.top-lang-switcher a {
  display: flex;
  min-width: 36px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(81, 40, 46, 0.35);
  color: #E1C6CA!important;
  font-size: 12px;
  line-height: 1;
  text-decoration: none;
}

.top-lang-switcher .current-lang a {
  color: #fff!important;
}

.top-lang-switcher a:hover {
  background: transparent;
  color: #E1C6CA!important;
}

.top-lang-switcher .current-lang a:hover {
  color: #fff!important;
}

/****mobilebotton*************/
.mobile-menu-buttons .menu-button,
.mobile-menu-buttons .menu-button a,
.mobile-menu-buttons .menu-button .fa,
.mobile-menu-buttons .menu-button .fas,
.mobile-menu-buttons .menu-button .far,
.mobile-menu-buttons .menu-button .fab,
.mobile-menu-buttons .menu-button .icon {
  color: #51282e;
}

@media screen and (max-width: 834px) {
  .top-hero-nav,
  .top-hero-nav__inner {
    display: none;
  }
}


/**** standard page ************************************************************/
.page-standard {
  background: #fff;
  color: #2f2523;
}

.page-standard__hero {
  padding: 80px 24px 48px;
  text-align: center;
}

.page-standard__hero-inner {
  max-width: 880px;
  margin: 0 auto;
}

.page-standard__title {
  margin: 0;
  color: #51282e;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.5;

}

.page-standard__lead {
  max-width: 720px;
  margin: 24px auto 0;
  font-size: 15px;
  line-height: 2;
  text-align: left;
}

.page-standard__eyecatch {
  max-width: 960px;
  margin: 0 auto 56px;
  padding: 0 24px;
}

.page-standard__eyecatch img {
  display: block;
  width: 100%;
  height: auto;
}

.page-standard__content {
  max-width: 880px;
  margin: 0 auto;
  padding: 0 24px 96px;
  font-size: 15px;
  line-height: 2;
}

.page-standard__content h2 {
  margin: 64px 0 24px;
  color: #51282e;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.6;
}

.page-standard__content h3 {
  margin: 48px 0 18px;
  color: #51282e;
  font-size: 19px;
  font-weight: 400;
  line-height: 1.6;
}

.page-standard__content p {
  margin: 0 0 1.8em;
}

.page-standard__content img {
  max-width: 100%;
  height: auto;
  box-shadow:
    0 8px 18px rgba(47, 37, 35, 0.08),
    0 24px 48px rgba(47, 37, 35, 0.12);
  border-radius: 4px;
}

.page-standard__content a {
  color: #51282e;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.fade-in-up {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 1.4s ease, transform 1.4s ease;
  will-change: opacity, transform;
}

.fade-in-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}


.page-standard .inner {
  display: flex;
  gap: 32px;
  align-items: flex-start;
}


@media screen and (max-width: 834px) {
  .page-standard__hero {
    padding: 56px 18px 36px;
  }

  .page-standard__title {
    font-size: 26px;
  }

  .page-standard__eyecatch {
    margin-bottom: 40px;
    padding: 0 18px;
  }

  .page-standard__content {
    padding: 0 18px 72px;
  }

  .page-standard__content h2 {
    margin-top: 48px;
    font-size: 22px;
  }
  .page-standard .inner{
  display: block;
}
  .page-standard .inner > div:first-child {
    margin-bottom: 24px;
  }
}
