/*==========================
	add common css
============================*/

.w-80per {
  width: 80%;
}

@media (min-width: 640px) and (max-width: 1000px) {
  .w-md-80per {
    width: 80%;
  }
}

.rounded-5 {
  border-radius: 5px;
}

/*==========================
	#event overwrite
============================*/

article {
  width: 100%;
  margin: auto;
}

article a {
  color: #333;
  transition: 0.2s linear;
}

article a:hover {
  color: #333;
  opacity: 0.6;
}

.bread {
  /* padding-top: 90px; */
  background: none !important;
  /* border: #f00 thin solid; */
}

.bread__inner.inner {
  max-width: 1200px;
  /* padding-top: 25px; */
  padding-bottom: 0px;
  /* border: #f00 thin solid; */
}

@media print, screen and (max-width: 900px) {
  main {
    padding-top: 10px;
  }

  .bread {
    display: none !important;
  }

  .bread {
    padding-top: 90px;
    background: none !important;
  }
}

/*==========================
	 common
============================*/

/* fonts */

.gray_aaa {
  color: #aaa;
}

.gray_999 {
  color: #999;
}

.orange {
  color: #dd7a0e;
}

/*

// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 100 to 900

*/

.noto-sans-jp-900 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.btn {
  padding: 3px 10px 2px;
  color: #dd7a0e;
  display: inline-block;
  border: #dd7a0e thin solid;
}

.apply_btn a {
  color: #fff;
  background: #c8373c;
}

/*==========================
	 contents
============================*/

@media print, screen and (max-width: 1000px) {
  /* #contents {
    padding-top: 40px;
  } */
}

@media print, screen and (max-width: 900px) {
  /* #contents {
    padding-top: 30px;
  } */
}

/*==========================
	 title
============================*/

#title {
  background: url(../img/1x/bg_title_pc_all.png) top center no-repeat;
}

.title_box {
  width: 95%;
  max-width: 1200px;
  min-height: 526px;
  margin: auto;
  background: url(../img/bookcover.jpg) no-repeat top right;
}

#title h1 {
  width: 88%;
  /* max-width: 938px; */
  max-width: 1048px;
  margin-bottom: 10px;
}

#title .h1_pc {
  max-width: 1048px;
  display: block;
}

#title .h1_mob {
  display: none;
}

/* #title .date {
} */

@media screen and (max-width: 1280px) {
  #title {
    background: url(../img/1x/bg_title_all_1200.png) top center no-repeat;
    background-size: contain;
  }
}

@media screen and (min-width: 641px) and (max-width: 900px) {
  #title .date {
    font-size: 60px;
  }
}

@media print, screen and (max-width: 900px) {
  #title {
    background: none;
  }

  .title_box {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    background: none;
  }

  #title h1 {
    width: 100%;
    max-width: 100%;
    /* margin-bottom: 10px; */
    margin-bottom: 0;
  }

  #title .h1_pc {
    display: none;
  }

  #title .h1_mob {
    display: block;
  }

  #title .date {
    width: 90%;
    margin: auto auto 60px;
  }
}

/*==========================
	 outline
============================*/

#outline {
  background: #c9bc9c;
  padding-top: 60px;
  padding-bottom: 60px;
}

#outline .lv_02 {
  width: 98%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 60px;
  padding: 60px 15px 90px;
  background: #fff;
}

.issue {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  padding: 15px 30px 30px;
  /* border: #c9bc9c 1px solid; */
  border: #dd7a0e thin dotted;
}

.issue h4 {
  border-bottom: #dd7a0e thin solid;
}

.issue li::before {
  content: "\25C6";
  /*◆*/
  color: #dd7a0e;
  margin-right: 5px;
}

#outline h2 {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 0 15px;
  color: #fff;
  background: #dd7a0e;
}

#outline h3 {
  padding: 20px 0 15px;
  color: #fff;
  background: #dd7a0e;
}

#outline h4 {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 10px;
  border-bottom: #dd7a0e thin solid;
}

.date_detail .icon {
  color: #fff;
  /* background-color: #dd7a0e; */
  background-color: #8e795e;
  display: inline-block;
  padding: 0 15px;
}

@media print, screen and (max-width: 900px) {
  #outline {
    padding-top: 30px;
    padding-bottom: 60px;
  }

  #outline .lv_02 {
    width: 90%;
    padding: 30px 15px 60px;
  }

  .issue {
    width: 100%;
    padding: 15px 30px 30px;
  }

  #outline h2 {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-bottom: #dd7a0e thin solid;
  }
}

/*==========================
	 book
============================*/

.book_info .box {
  margin-left: 3%;
  margin-right: 3%;
}

@media print, screen and (max-width: 900px) {
  .book_info .box {
    margin-bottom: 60px;
  }
}

/*==========================
	 apply
============================*/

#apply {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 45px 0;
  border: #dd7a0e 2px solid;
}

@media print, screen and (max-width: 900px) {
  #apply {
    width: 95%;
    padding: 15px 15px;
  }
}

/*==========================
	 performer
============================*/

.performer .flexbox .txtbox {
  width: 75%;
  text-align: left;
}

.performer .flexbox figure {
  width: 20%;
}

@media print, screen and (max-width: 900px) {
  .performer .flexbox figure {
    width: 60% !important;
    max-width: 300px;
    margin-bottom: 30px;
  }

  .performer .flexbox .txtbox {
    width: 90% !important;
    margin-left: auto;
    margin-right: auto;
  }
}

/*==========================================
	// id #access
============================================*/

#access h3 {
  color: #333;
  border-bottom: #9d4753 2px solid;
}

#access .txtbox {
  text-align: left;
}

#access figure {
  text-align: left;
}

#access .mapbox iframe {
  width: 80%;
  margin: auto;
  height: 450px;
}
@media print, screen and (max-width: 900px) {
  #access .mapbox iframe {
    width: 100%;
    margin: auto;
    height: 300px;
  }
}
