/*　///// grand-header  /////　*/

#grand-header {
  height: 40px;
  margin-bottom: 0;
  background-color: #3c3c41;
  display: flex;
  justify-content: center;
  align-items: center;
}

#grand-header a {
  width: 92px;
}

#grand-header a img {
  width: 100%;
}

.header.miyajiHeader {
  display: none;
}

@media print, screen and (min-width: 1000px) {

  #grand-header {
    height: 60px;
  }

  #grand-header a {
    width: 132px;
  }

}


/*　///// overwrite /////　*/

.bread__inner.inner {
  max-width: 1280px;
}


/*　///// add module /////　*/

.w-98per {
  width: 98%;
}

.w-95per {
  width: 95%;
}


.mw-1280 {
  max-width: 1280px;
}





/*　///// font /////　*/
.noto-serif-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.noto-serif-jp.fw200 {
  font-weight: 200;
  /* border: #f00 thin solid; */
}

.noto-serif-jp.fw300 {
  font-weight: 300;
}

.noto-serif-jp.fw400 {
  font-weight: 400;
}

.noto-serif-jp.fw500 {
  font-weight: 500;
}

.noto-serif-jp.fw600 {
  font-weight: 600;
}

.noto-serif-jp.fw700 {
  font-weight: 700;
}

.noto-serif-jp.fw800 {
  font-weight: 800;
}

.dulcinia {
  font-family: "dulcinea", sans-serif;
  font-weight: 400;
  font-style: normal;
}



/*　///// colors /////　*/


/* opacity */

.op03 {
  opacity: 0.3;
}

.op05 {
  opacity: 0.5;
}

.op07 {
  opacity: 0.7;
}


/* font */

.green {
  color: #2c7026;
}

.brown {
  color: #46240e;
}

.gold {
  color: #a8820e;
}

.text-333 {
  color: #333;
}

.text-555 {
  color: #555;
}


.text-666 {
  color: #666;
}


.text-999 {
  color: #999;
}



/* bg */

.beige-1 {
  background-color: #e7e1d4;
}

.beige-2 {
  background-color: #e2d7c5;
}

.bg-title-beige {
  background-color: #dfd7c4;
}


.bg-green {
  background-color: #054900;
}

.bg-brown {
  background-color: #46240e;
}


.bg-eee {
  background-color: #eee;
}


.bg-ddd {
  background-color: #ddd;
}

.bg-aaa {
  background-color: #aaa;
}


/* border */


.b-fff-1 {
  border: #fff thin solid;
}

.b-light-green {
  border: #b4c9b3 thin solid;
}

.b-light-green2 {
  border: #738b72 thin solid;
}

.bb-333-1px {
  border-bottom: #333 thin solid;
}


.bb-555-1px {
  border-bottom: #555 thin solid;
}


.bb-666-1px {
  border-bottom: #666 thin solid;
}

.bb-green-1px {
  border-bottom: #2c7026 thin solid;
}




/* shadow */


.shadow {
  box-shadow: 0 27px 10px rgb(0 0 0 / 17%);
}


/*　///// title /////　*/
#title {
  background-color: #dfd7c4;
}




#h1-pc {
  display: none;
}


#h1-mob {
  display: block;
}


.mv-pc {
  display: none;
}

#title .bg-deco {
  padding: 0;
  background: none;
}

@media screen and (min-width: 1024px) {

  #title .inside {
    width: 90%;
    margin: auto;
  }



  #title .bg-deco {
    padding: 10px 0;
    background: url(../img/bg-title-pc.png) repeat-x center center;
  }

  #title .inside {
    width: 98%;
    max-width: 1240px;

    padding: 50px 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
  }


  #title .inside h1 {
    width: 51.5%;
    max-width: 638px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    z-index: 2;
  }


  #h1-pc {
    display: block;
  }


  #h1-mob {
    display: none;
  }


  .mv-pc {
    display: block;
  }


}




/*　///// contents /////　*/

.contents {
  background: #054900 url(../img/pt-green.png) repeat top center;
}


.contents .ttl-line {
  letter-spacing: 2px;
  position: relative;
}

.contents .ttl-line::before,
.contents .ttl-line::after {
  position: absolute;
  top: 50%;
  /* width: 37%; */
  width: 20%;
  height: 1px;
  background-color: #ffffff;
  content: '';
}


.contents .ttl-line.green-line::before,
.contents .ttl-line.green-line::after {
  position: absolute;
  top: 50%;
  /* width: 37%; */
  width: 20%;
  height: 1px;
  background-color: #2c7026;
  content: '';
}

.contents .ttl-line.gold-line::before,
.contents .ttl-line.gold-line::after {
  position: absolute;
  top: 50%;
  width: 5%;
  height: 1px;
  background-color: #a8820e;
  content: '';
}


.contents .ttl-line::before {
  left: 0;
}

.contents .ttl-line::after {
  right: 0;
}



@media screen and (min-width: 900px) {

  .contents .ttl-line.gold-line::before,
  .contents .ttl-line.gold-line::after {
    position: absolute;
    top: 50%;
    width: 12%;
    height: 1px;
    background-color: #a8820e;
    content: '';
  }


}

@media screen and (min-width: 1024px) {

  .contents .ttl-line::before,
  .contents .ttl-line::after {
    position: absolute;
    top: 50%;
    /* width: 37%; */
    width: 30%;
    height: 1px;
    background-color: #ffffff;
    content: '';
  }


  .contents .ttl-line.green-line::before,
  .contents .ttl-line.green-line::after {
    position: absolute;
    top: 50%;
    /* width: 37%; */
    width: 30%;
    height: 1px;
    background-color: #2c7026;
    content: '';
  }

  .contents .ttl-line.gold-line::before,
  .contents .ttl-line.gold-line::after {
    position: absolute;
    top: 50%;
    /* width: 37%; */
    width: 25%;
    height: 1px;
    background-color: #a8820e;
    content: '';
  }

}



/*　///// program /////　*/

#program {
  position: relative;
}


#program .program-inner {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  /* background-color: #e7e1d4; */
  background: #e7e1d4 url(../img/bg-paper-beige.jpg) repeat;
  position: relative;
}


#program .program-inner .line.naname-1 {
  width: 50px;
  height: 50px;
  background: linear-gradient(-45deg, transparent 49%, #a89974 49%, #a89974 51%, transparent 51%, transparent);
  position: absolute;
  top: -5px;
  left: -5px;
  z-index: 5;
}


#program .program-inner .line.naname-2 {
  width: 50px;
  height: 50px;
  background: linear-gradient(45deg, transparent, transparent 49%, #a89974 49%, #a89974 51%, transparent 51%, transparent);
  position: absolute;
  top: -5px;
  right: -5px;
  z-index: 5;
}


@media screen and (min-width: 1024px) {


  #program .program-inner {
    width: 95%;
    max-width: 1000px;
  }

  #program .program-inner .line.naname-1 {
    width: 75px;
    height: 75px;
    background: linear-gradient(-45deg, transparent 49%, #a89974 49%, #a89974 51%, transparent 51%, transparent);
    position: absolute;
    top: -15px;
    left: -15px;
    z-index: 5;
  }


  #program .program-inner .line.naname-2 {
    width: 75px;
    height: 75px;
    background: linear-gradient(45deg, transparent, transparent 49%, #a89974 49%, #a89974 51%, transparent 51%, transparent);
    position: absolute;
    top: -15px;
    right: -15px;
    z-index: 5;
  }
}



/*　///// info /////　*/

/* info */

#info {
  /* padding: 74px 0 80px; */
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
}

#info .bg-yellow-ttl {
  width: 230px;
  line-height: 1.5;
  background-color: #a8820e;
  font-size: 18px;
  letter-spacing: 0;
  display: inline-block;
}



/*　///// inquiry /////　*/

#inquiry .box {
  position: relative;
}

#inquiry .box::before {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 95px;
  height: 92px;
  background: url('../img/gold_border01.png') no-repeat center/contain;
  content: '';
}

#inquiry .box::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 95px;
  height: 92px;
  background: url('../img/gold_border02.png') no-repeat center/contain;
  content: '';
}

@media screen and (min-width: 769px) {

  #inquiry .box::before {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 188px;
    height: 182px;
    background: url('../img/gold_border01.png') no-repeat center/contain;
    content: '';
  }

  #inquiry .box::after {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 188px;
    height: 182px;
    background: url('../img/gold_border02.png') no-repeat center/contain;
    content: '';
  }

}

/*=============================
	access
===============================*/


.mapbox iframe {
  width: 100%;
  height: 360px;
}

@media screen and (min-width: 1000px) {


  .mapbox iframe {
    width: 100%;
    height: 600px;
  }

}




/*=============================
	sns_iconbox
===============================*/


.sns_iconbox {
  width: 95%;
  max-width: 1260px;
  margin: auto auto 60px;
  padding-top: 120px;
  text-align: center;
  font-size: 1.5rem;
}


.sns_iconbox h4 {
  font-size: 1.8rem;

  margin-bottom: 20px;
  padding: 1em;
  border: none;
  border-top: #555 thin solid;
  border-bottom: #555 thin solid;
}

.sns_iconbox p {
  margin-bottom: 30px;
}

.sns_iconbox ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

.sns_iconbox li {
  width: 40px;
  margin: 0 10px;
}

/* .sns_iconbox li:nth-child(3) {
  width: 100px;
} */

.sns_iconbox li img {
  width: 100%;
  vertical-align: bottom;
}



@media print,
screen and (max-width: 768px) {

  .sns_iconbox {
    text-align: left;
    font-size: 1.4rem;
    padding-top: 60px;
  }

  .sns_iconbox h4 {
    text-align: center;
  }

  .sns_iconbox p {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }


}



/*=============================
	advance_notice
===============================*/

.advance_notice {
  font-size: 1.4rem;
  text-align: center;
  background: #fff;
  padding: 10em 0 5em;
}

.advance_notice p {
  margin-bottom: 1em;
}