/*=================================
	overwrite
===================================*/

.bread .inner {
  width: 89%;
  max-width: 1280px;
}

main em {
  font-style: normal;
}

/*=======================
	// font-family
=====================*/

/*
// <weight>: Use a value from 200 to 900
// <uniquifier>: Use a unique and descriptive class name
.noto-serif-jp-<uniquifier> {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
  */
.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;
}


/*

.eb-garamond-<uniquifier> {
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

*/

.eb-garamond {
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  /* font-weight: <weight>; */
  font-style: normal;
}

.eb-garamond.fw400 {
  font-weight: 400;
}

.eb-garamond.fw500 {
  font-weight: 500;
}

.eb-garamond.fw600 {
  font-weight: 600;
}

.eb-garamond.fw700 {
  font-weight: 700;
}

.eb-garamond.fw800 {
  font-weight: 800;
}



/*=================================
	// add module
===================================*/



.mw-1280 {
  max-width: 1280px;
}


/*=================================
	// color-settings
===================================*/

.text-brown2 {
  color: #664730;
}

.text-orange {
  color: #cc4c16;
}

.text-green {
  color: #316334;
}

.text-333 {
  color: #333;
}

.text-999 {
  color: #666;
}

.text-999 {
  color: #999;
}




.bg-orange {
  background-color: #cc4c16;
}

.bg-brown2 {
  background-color: #664730;
}

.bg-beige {
  background-color: #ebe1da;
}

.border-black {
  border: #000 thin solid;
}




.border-green {
  border-bottom: #316334 thin solid;
}


.border-bottom-green {
  border-bottom: #316334 thin solid;
}




/*=================================
	// note common
===================================*/
/* .flexbox {
  display: flex;
  justify-content: space-between;
} */


.list-slash li {
  display: inline-block;
}

.list-slash li::after {
  /*スラッシュ*/
  content: '\30FB';
  margin-left: 2px;
  margin-right: 2px;
}

.list-slash li:last-child::after {
  content: none;
}

@media screen and (min-width: 1000px) {

  .list-slash li {
    display: inline-block;
  }

  .list-slash li::after {
    /*スラッシュ*/
    content: '\FF0F';
    margin-left: 8px;
    margin-right: 8px;
  }

  .list-slash li:last-child::after {
    content: none;
  }

}



/*=================================
	id #title
===================================*/

#title h1 {
  width: 90%;
}

#title h1 span {
  display: inline-block;
}

#title .lead {
  max-width: 1150px;
}

#h1_pc {
  display: none;
}

#h1_mob {
  display: block;
}

#mv_pc {
  display: none;
}

#mv_mob {
  display: block;
}



#title .date-place {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}


#title .lead {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 768px) {


  #title h1 {
    width: auto;
    max-width: 1150px;
  }

  #h1_pc {
    display: block;
  }

  #h1_mob {
    display: none;
  }

  #mv_pc {
    display: block;
  }

  #mv_mob {
    display: none;
  }

  #title .date-place {
    width: auto;
  }


}






/*=================================
	// id #title_nav
===================================*/

#title_nav li {
  height: 50px;
  display: block;
  margin-bottom: 15px;
}

#title_nav li a {
  height: 50px;
  color: #4d7a50;
  border: #4d7a50 thin solid;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: .2s linear;
}


#title_nav li a:hover {
  color: #fff;
  background-color: #4d7a50;
}

@media screen and (min-width: 768px) {

  #title_nav {
    width: 90%;
  }

  #title_nav ul {
    display: flex;
    justify-content: space-between;
  }

  #title_nav li {
    width: 32%;
    display: inline-block;
  }

  #title_nav li a {
    height: 60px;
  }

}

/*=================================
	// layout
===================================*/


#wrap {
  background: url(../img/bg-pc.jpg) repeat-y top center;
  background-size: contain;
}

#wrap .inside {
  width: 92%;
}

.lv-02 {
  width: 95%;
}


@media screen and (min-width: 1000px) {

  #wrap {
    background: url(../img/bg-pc.jpg) repeat-y top center;
    background-size: contain;
  }

  #wrap .inside {
    width: 90%;
  }

  .lv-02 {
    width: 90%;
  }

}




/*=================================
	// class .contents
===================================*/


.contents h2 {
  height: 120px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: url(../img/bg-pc-2.jpg) center center no-repeat;
  background-size: cover;
}



.contents h2 span {
  margin-left: 0;
  display: block;
}

.sub_category {
  margin-bottom: 0;
}

.sub_category h3 {
  font-size: 2.2rem;
}

.contents .lead {
  width: 85%;
  margin: auto;
  padding: 0.5em 0 2em;
}

.contents .lead p {
  width: 100%;
  margin: auto auto 1em;
  font-size: 1.4rem;
}

.link-lineup a {
  width: 90%;
}

/* .contents h2 {
  font-size: 2.6rem;
} */




@media screen and (min-width: 1000px) {

  .contents .tax {
    width: 98%;
    max-width: 1260px;
    margin: auto auto 2em;
    font-size: 1.2rem;
    text-align: right;
  }

  .contents h2 {
    height: 180px;
  }

  .contents h2 span {
    margin-left: 0.5em;
  }

  .sub_category {
    margin-bottom: 60px;
  }

  .sub_category h3 {
    width: 95%;
    margin: auto auto 1em;
    padding: 0.5em 0;
    font-size: 3rem;
    font-weight: normal;
    color: #900;
    font-family: "Sawarabi Mincho", sans-serif;
    text-align: center;
    border-bottom: #900 thin solid;
  }

  .contents .lead {
    width: 95%;
    margin: auto;
    padding: 2em 0 1em;
  }

  .contents .lead p {
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: 1em;
  }

  .part_of {
    width: 90%;
    margin: auto;
    padding: 0 0 0.25em;
    font-size: 1.8rem;
  }

  .contents .lead .tax {
    font-size: 1.2rem;
    text-align: right;
  }

  .link-lineup a {
    width: 50%;
    margin: auto auto 3em;
    padding: 1em 0;
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    /*    background: #9D4753;*/
    background: #c2564a;
    display: block;
    position: relative;
  }

  .link-lineup a::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border-bottom: 14px solid #e47669;
    border-left: 14px solid transparent;
  }



}




/*=================================
	// id #introduction
===================================*/

#introduction {
  margin-bottom: 60px;
}

.introduction_pc {
  display: block;
}

.introduction_mob {
  display: none;
}

#introduction li img {
  margin-bottom: 5px;
}

#introduction img {
  width: 100%;
}

@media screen and (min-width: 1281px) {
  .pc_line.first {
    width: 68%;
  }

  .pc_line.second {
    width: 60%;
  }

  .pc_line.third {
    width: 54%;
  }
}

@media screen and (max-width: 1280px) and (min-width: 901px) {
  .pc_line.first {
    width: 78%;
  }

  .pc_line.second {
    width: 64%;
  }

  .pc_line.third {
    width: 64%;
  }
}

@media screen and (max-width: 900px) and (min-width: 769px) {
  .pc_line.first {
    width: 88%;
  }

  .pc_line.second {
    width: 74%;
  }

  .pc_line.third {
    width: 74%;
  }
}

@media screen and (min-width: 769px) {
  #introduction li {
    width: 126px;
  }

  .pc_line {
    margin: auto auto 40px;
  }

  .pc_line {
    display: flex;
    justify-content: space-between;
  }
}

@media print, screen and (max-width: 768px) {
  .introduction_pc {
    display: none;
  }

  .introduction_mob {
    width: 70%;
    margin: auto;
    display: block;
  }

  .introduction_mob ul {
    flex-wrap: wrap;
  }

  .introduction_mob li {
    width: 30%;
    margin: 0 1% 30px;
  }
}

@media print, screen and (max-width: 640px) {
  .introduction_mob {
    width: 95%;
    margin: auto;
    display: block;
  }
}

/*=================================
	// id .detail
===================================*/

.detail .row-block {
  margin-bottom: 60px;
  padding-bottom: 0;
  border-bottom: #dfcdb0 thin solid;
}

.detail .row-block-lv-02 {
  display: block;
}

.detail .row-block .txtbox {
  width: 100%;
  margin-bottom: 0;
}



.detail figure.inst.pc {
  display: none;
}

.detail figure.inst.sp {
  display: block;
  margin-bottom: 45px;
}

.detail .row-block figure.inst {
  width: 20%;
  max-width: 20%;
  margin: auto;
}

.detail .profile.flexbox {
  display: block;
}

.detail .profile figure {
  width: 50%;
  max-width: 50%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}

.detail .profile .prof_txt {
  width: 100%;
  margin-bottom: 30px;
}

.detail .profile .prof_txt h3 {
  line-height: 1.3;
}

.detail .profile .jp {
  font-size: 3.2rem;
  margin-right: 0;
  display: block;
}


.detail .item .link {
  margin-bottom: 15px;
}


.detail .row-block figure.inst {
  width: 36%;
  max-width: 36%;

}

.detail .item h4 {
  padding: 3px 10px 2px;
  font-weight: normal;
  color: #fff;
  background: #664730;
  display: inline-block;
}

.detail .profile h3 {
  margin-bottom: 15px;
  padding-bottom: 5px;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  border-bottom: #dfcdb0 thin solid;
}

.detail .profile h3 span {
  display: inline-block;
}

.detail .item a {
  padding: 5px 30px;
  font-size: 16px;
  color: #664730;
  border: #dfcdb0 2px solid;
  display: block;
  margin: 0;
  text-align: center;
}






#participate .detail figure.pc {
  display: none;
}

#participate .detail figure.mob {
  display: block;
  margin-bottom: 60px;
}

#participate .detail figure .inst {
  width: 36%;
  max-width: 36%;
}

#participate .link a {
  padding: 5px 30px;
  font-size: 16px;
  color: #664730;
  border: #dfcdb0 2px solid;
  display: block;
  margin: 0;
  text-align: center;
}


@media screen and (min-width: 768px) {


  .detail .profile .prof_txt {
    margin-bottom: 60px;
  }

  .detail .row-block figure.inst {
    width: 36%;
    max-width: 36%;
    /* border: #f00 thin solid; */

  }

  .detail .row-block figure.inst img {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }

  #participate .detail figure.pc {
    display: block;
  }

  #participate .detail figure.mob {
    display: none;
  }

  #participate .detail figure .inst {
    /* width: 15%; */
    width: 195px;
  }

  .detail .item a {
    width: 300px;
    display: inline-block;
  }


  #participate .link a {
    width: 300px;
    display: inline-block;
  }


}

@media screen and (min-width: 1280px) {


  .detail .row-lv-02 {
    display: flex;
    /* border: #f00 thin solid; */
  }


  .detail .row-block {
    width: 100%;
    margin: auto auto 60px;
    padding: auto 30px 60px;
    align-items: center;

    /* border: #f00 thin solid; */
  }

  .detail .row-block .txtbox {
    width: calc(100% - 300px);
    /* width: 80%; */
    /* border: #f00 thin solid; */
  }

  .detail .row-block figure.inst {
    /* width: 15%; */
    width: 195px;
    /* border: #f00 thin solid; */
  }



  .detail figure.inst.pc {
    display: block;
  }

  .detail figure.inst.sp {
    display: none;
  }

  .detail figure.inst figcaption {
    font-size: 12px;
    text-align: right;
  }

  .detail .profile {
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
  }

  .detail .profile figure {
    width: 24%;
    margin: 0;
  }

  .detail .profile .prof_txt {
    width: 72%;
  }


  .detail .profile .img_pc {
    display: block;
  }

  .detail .profile .img_mob {
    display: none;
  }

  .detail .profile .prof_txt p {
    font-size: 1.5rem;
  }

  .detail .profile .jp {
    font-size: 4.2rem;
    margin-right: 10px;
  }

  .detail .profile .jp small {
    font-size: 3.0rem;
  }


  .detail .profile .en {
    font-size: 2rem;
  }

  .detail .item ul li {
    margin-bottom: 10px;
  }





  .detail .item .link a .arrow {
    width: 8px;
  }

  .detail .item .order {
    margin-right: 5px;
  }


  #participate .detail figure .inst {
    width: 195px;
  }

  #participate .detail .profile {
    display: block;
  }





}


@media screen and (min-width: 1600px) {

  .detail .profile figure {
    width: 200px;
    margin: 0;
  }

  .detail .profile .prof_txt {
    width: calc(100% - 230px);
  }


}




/*=================================
	// note .slide-bottom
===================================*/

/* .slide-bottom {
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.7s 0s ease-out;
} */











/*====================================================
	advance_notice
=====================================================*/

.advance_notice .inside {
  min-height: 600px;
}