@charset "UTF-8";

/* =========================================================
   Content.calendarEvents td.date p span {
========================================================= */
/* =========================================================
   contentGpArticleDoc
========================================================= */
#contentBody {
  position: relative;
  z-index: 10;
}

.contentGpArticleDoc .date {
  margin-bottom: 25px;
  padding-right: 8px;
  text-align: right;
}

/* midashi
----------------------------------------------- */
.contentGpArticleDoc .body::after,
.contentPage .body::after {
  content: "";
  clear: both;
  display: block;
}

.body h1,
.body h2,
.body h3,
.body h4,
.body h5,
.body h6,
.contentGpCategoryCategoryTypes h2,
.contentGpCategoryCategoryType h2,
.calendarEvents h2 {
  margin: 0 0 15px;
}

.body h2 {
  padding: 8px 18px;
  border-top: 2px solid #0045a4;
  border-bottom: 1px solid #ccc;
}

body[class^="dir-geibun"] .body h2 {
  border-top-color: #00837e;
}

body[class^="dir-mjo"] .body h2 {
  border-top-color: #a05f01;
}

body[class^="dir-gallery"] .body h2 {
  border-top-color: #d23b64;
}

body[class^="dir-kokaido"] .body h2 {
  border-top-color: #cd4b00;
}

body[class^="dir-seishin"] .body h2 {
  border-top-color: #877300;
}

body[class^="dir-yuzo"] .body h2 {
  border-top-color: #914b32;
}

body[class^="dir-dazai"] .body h2 {
  border-top-color: #6e783c;
}

body[class^="dir-shg"] .body h2 {
  border-top-color: #db5e72;
}

body[class^="dir-yoshimura"] .body h2 {
  border-top-color: #398eb5;
}

.body h3,
.maps h2,
.rels h2,
.tags h2 {
  padding: 6px 18px;
  background: url("./images/bg-pattern-h3.gif");
}

ul.sitemap a {
  display: block;
  margin-bottom: 5px;
  text-decoration: none;
}

ul.sitemap li.level1>a {
  display: block;
  padding: 10px 18px;
  background: url("./images/bg-pattern-h3.gif");
  font-size: 115%;
  font-weight: 500;
}

ul.sitemap li.level2>a {
  padding: 6px 14px;
  border: 1px solid #c3bebd;
  border-left: 3px solid #0045a4;
}

ul.sitemap li.level3:last-child {
  margin-bottom: 10px;
}

ul.sitemap li.level3>a,
ul.sitemap li.level4>a {
  display: inline-block;
  margin-left: 20px;
  padding-left: 16px;
  background: url("./images/ic-list-eventyoyaku.png") no-repeat left center;
}

ul.sitemap li.level4>a {
  margin-left: 38px;
}

ul.sitemap li.level1 {
  margin-bottom: 20px;
}

.surveyForm .question_content,
.body h4 {
  padding: 0 10px;
  border-left: 5px solid #7f7f7f;
}

.body h5 {
  font-size: 100%;
}

.contentGpCategoryCategoryTypes h2 a,
.contentGpCategoryCategoryType h2 a,
.calendarEvents h2 {
  display: block;
  padding: 8px 18px;
  border-top: 2px solid #0045a4;
  border-bottom: 1px solid #ccc;
  text-decoration: none;
}

ul.sitemap li.level1>a:hover,
ul.sitemap li.level1>a:focus,
.contentGpCategoryCategoryTypes h2 a:hover,
.contentGpCategoryCategoryTypes h2 a:focus,
.contentGpCategoryCategoryType h2 a:hover,
.contentGpCategoryCategoryType h2 a:focus {
  opacity: 0.9;
}

.contentGpCategoryCategoryType section {
  margin-bottom: 14px;
}

.contentGpCategoryCategoryType .docs:last-child,
.contentGpCategoryCategory .docs,
.contentGpArticleDocs .docs {
  margin: 10px 0 40px;
}

.contentGpCategoryCategoryType .docs li,
.contentGpCategoryCategory .docs li,
.contentGpArticleDocs .docs li {
  padding: 6px 14px;
  border-bottom: 1px dotted #bbb;
}

.recycle .surveyForm .question_content,
.recycle .body h4 {
  border-color: #fadc00;
}

.surveyForm .question_content {
  margin-bottom: 5px;
  font-weight: bold;
}

.body ul+h2,
.body p+h2 {
  margin-top: 1.5em;
}

.body p.indent {
  text-indent: 1em;
}

.body p.noMargin {
  margin: 0;
}

.body ul,
#errorExplanation ul {
  list-style: none;
  margin-bottom: 1em;
}

.body ul>li::before,
#errorExplanation ul>li::before {
  content: "・";
}

.body>.contentGpCategory ul {
  margin: 0;
}

.body>.contentGpCategory ul>li::before {
  content: "";
}

.body>.contentGpCategory ul>li {
  margin: 0;
  padding: 0;
  text-indent: 0;
}

.body ul>li,
.body ol>li {
  margin-bottom: 0.5em;
}

.body ul>li,
#errorExplanation ul>li {
  padding-left: 1em;
  text-indent: -1em;
}

.body ul.col3 li {
  display: inline-block;
  vertical-align: top;
  width: 32.8%;
}

.body ol {
  margin: 0 0 1em 22px;
}

.body table {
  width: auto;
  max-width: 100%;
  margin-bottom: 15px;
  border: 1px solid #ccc;
}

.body table caption {
  font-weight: bold;
  text-align: center;
}

.body th {
  background-color: #eee;
  text-align: left;
  white-space: nowrap;
}

.body th,
.body td {
  border: 1px solid #ccc;
  padding: 5px 14px;
  vertical-align: middle;
}

.body table.top th,
.body table.top td {
  vertical-align: top;
}

.body sup {
  font-size: 85%;
  vertical-align: super;
}

.body sub {
  font-size: 85%;
  vertical-align: sub;
}

.body .warning {
  color: #ee0000;
  font-weight: bold;
}

ul.sitemap,
.contentPage .body,
.contentGpArticleDoc .body,
.contentGpArticleDoc .maps,
.contentGpArticleDoc .rels,
.contentGpArticleDoc .tags {
  margin-bottom: 40px;
}

.maps h3 {
  font-weight: normal;
  margin: -10px 0 5px;
}

.rels li::before {
  content: "・";
}

.rels li {
  padding-left: 1em;
  text-indent: -1em;
}

.tags li {
  display: inline-block;
  margin-right: 0.5em;
}

/* reuse-list
---------------------- */
table.goods {
  width: 100%;
}

table.goods th,
table.goods td {
  padding: 6px 3px;
  white-space: nowrap;
}

.contentGpArticleDoc .temp1 .thumb+div {
  float: none;
  clear: both;
}

/* feed
---------------------- */
.contentGpCategory,
.contentGpArticleDocs,
.contentGpCategoryDoc {
  position: relative;
}

/* enquete
----------------------------------------------- */
.surveyForms .form {
  margin: 0 0 20px;
  padding: 10px 13px;
  border: 1px solid #f2f2f2;
}

.surveyForm .questions .question {
  margin: 0 0 10px;
}

.surveyForm .questions .question .body p {
  margin: 0;
  padding: 0;
  text-indent: 0;
}

.questions .question select,
.questions .question input[type="text"],
.questions .question input[type="email"],
.questions .question textarea {
  border: 1px solid #aaa;
}

.questions .question input[type="text"],
.questions .question input[type="email"] {
  width: 60%;
}

.questions .question input[type="text"],
.questions .question input[type="email"],
.questions .question textarea {
  padding: 5px;
}

.surveyForm .questions .question input[type="radio"] {
  margin: 0;
  vertical-align: baseline;
}

.questions .question .note {
  color: #ee0000;
  font-weight: bold;
}

.surveyForm .submit {
  margin: 20px 0;
  text-align: center;
}

.surveyForm .submit input {
  margin: 0 5px;
  padding: 8px;
  border: 1px solid #aaa;
  background: linear-gradient(to bottom, #fff 0%, #f2f2f2 100%);
  color: #000;
  cursor: pointer;
  text-decoration: none;
}

#errorExplanation {
  margin-bottom: 15px;
  padding: 10px;
  border: 1px solid #ffaaaa;
  border-radius: 7px;
  background-color: #fff3f3;
}

#errorExplanation h2 {
  color: #ee0000;
}

.surveyForm .back {
  margin: 20px 0;
  text-align: center;
}

.surveyForm .back a {
  display: block;
  width: 100px;
  margin: 0 auto;
  padding: 8px 0;
  border: 1px solid #aaa;
  background: linear-gradient(to bottom, #fff 0%, #f2f2f2 100%);
  color: #000;
  text-decoration: none;
}

/* list
----------------------------------------------- */
.body ol.parenthesis {
  counter-reset: number;
  list-style: none;
  margin: 0 0 20px;
  padding: 0 5px;
}

.body ol.parenthesis>li::before {
  counter-increment: number;
  content: "（"counter(number)"）";
}

.body ol.parenthesis>li {
  padding-left: 2.5em;
  text-indent: -2.5em;
}

.body ul.asterisk>li::before,
.body p.asterisk::before {
  content: "※";
}

.body ul.double_circle>li::before {
  content: "◎";
}

.body ul.asterisk>li,
.body ul.double_circle>li,
.body p.asterisk {
  padding-left: 1em;
  text-indent: -1em;
}

.body table ol,
.body table ol.parenthesis,
.body table ul,
.body table ul.asterisk,
.body table ul.double_circle {
  margin: 0;
  padding: 0;
}

.body table li {
  margin-bottom: 0;
}

.body dl.bus dt {
  font-size: 115%;
  font-weight: bold;
}

.body dl.bus dd {
  margin: 0 0 1em 1em;
}

.body table.facility {
  width: 100%;
}

.body table.facility th {
  background-color: transparent;
}

.body table.facility th,
.body table.facility td {
  vertical-align: top;
}

.body ul.facility {
  letter-spacing: -0.4em;
}

.body ul.facility>li {
  display: inline-block;
  margin: 0 10px 10px 0;
  padding: 10px;
  border: 1px solid #eee;
  box-shadow: 1px 2px 2px #999;
  vertical-align: top;
  letter-spacing: normal;
  text-indent: 0;
}

.body ul.facility>li::before {
  content: "";
}

.body ul.facility span {
  display: block;
  text-align: center;
}

.body ul.facility span:first-child {
  margin-bottom: 10px;
  text-align: center;
}

.body ul.facility img {
  border: 1px solid #ccc;
  border-right-color: #ddd;
  border-bottom-color: #eee;
}

.body ul.ruled_line>li {
  margin-bottom: 0;
}

.body ul.ruled_line>li::before {
  content: "├";
  margin-right: 0.2em;
}

.body ul.ruled_line>li:last-child::before {
  content: "└";
}

.border_marcle {
  margin: 5px 0;
  padding: 5px 10px;
  border: 3px solid #92cde3;
  border-radius: 8px;
  background-color: #fef4d6;
  color: #333;
}

.border_marcle h3 {
  margin: 0 5px 5px;
  padding: 0;
  background: none;
}

/* =========================================================
   search-event
========================================================= */
.searchEvents {
  margin-bottom: 30px;
  padding: 2px;
  border: 1px solid #bbb;
}

.searchEvents form {
  padding: 18px;
  background-color: #d9e3f1;
}

.searchEvents fieldset {
  margin-bottom: 20px;
}

.searchEvents fieldset legend {
  display: inline-block;
  min-width: 110px;
  padding: 2px 10px;
  border-radius: 5px 5px 0 0;
  background-color: #013e9b;
  color: #fff;
  font-weight: 500;
  vertical-align: bottom;
}

.searchEvents fieldset ul {
  padding: 5px 0 10px 15px;
  border-top: 2px solid #013e9b;
  background-color: #fff;
  letter-spacing: -0.4em;
}

.searchEvents fieldset li {
  display: inline-block;
  margin-bottom: 5px;
  vertical-align: middle;
  letter-spacing: normal;
}

.searchEvents fieldset li:not(:last-child) {
  margin-right: 15px;
}

.searchEvents fieldset.date li:not(:last-child) {
  margin-right: 8px;
}

.searchEvents fieldset label,
.searchEvents fieldset select,
.searchEvents fieldset input {
  display: block;
  padding: 2px;
}

.searchEvents fieldset select,
.searchEvents fieldset input {
  border: 1px solid #a5a5a5;
}

.searchEvents select {
  border-radius: 5px;
}

.searchEvents fieldset span {
  display: inline-block;
  vertical-align: -1.7em;
}

.searchEvents .submitters {
  text-align: center;
}

.searchEvents .submitters input {
  display: block;
  width: 135px;
  min-height: 30px;
  line-height: 30px;
  margin: 0 auto;
  border: 1px solid #bbb;
  background: linear-gradient(to bottom, #fff 0%, #e8e8e8 100%);
  font-weight: 500;
  cursor: pointer;
}

.searchEvents .submitters input:hover,
.searchEvents .submitters input:focus {
  filter: none;
  background: #ccdaed;
}

.resultEvents {
  border: 1px solid #bbb;
  border-top: 2px solid #0045a4;
}

.resultEvents:empty {
  display: none;
}

/* =========================================================
   recent-event
========================================================= */
#contentBody>.calendarEvents {
  margin-bottom: 20px;
}

.calendarEvents table {
  width: 100%;
}

.calendarEvents th,
.calendarEvents td,
div[id^="recentEvent"] table {
  border: 2px solid #fff;
}

.calendarEvents th,
.calendarEvents td {
  padding: 3px 6px;
  text-align: left;
}

.calendarEvents th {
  white-space: nowrap;
}

.calendarEvents th:empty {
  display: none;
}

.calendarEvents td {
  vertical-align: middle;
}

.calendarEvents td.date {
  width: 13em;
}

.calendarEvents td .category span {
  display: block;
}

.calendarEvents th:nth-child(2) {
  width: 7em;
}

.calendarEvents th:nth-child(4) {
  width: 8%;
}

.calendarEvents td:nth-child(4) {
  padding: 5px;
}

.calendarEvents th:nth-child(5) {
  width: 9em;
}

.calendarEvents th:nth-child(6) {
  width: 6em;
}

.calendarEvents td.sat {
  background-color: #e6ffff;
}

.calendarEvents td.sun {
  background-color: #ffebf5;
}

.calendarEvents tr:nth-child(odd) td {
  background-color: #eee;
}

.calendarEvents tr:nth-child(even) td {
  background-color: #f9f9f9;
}

.calendarEvents td.category_type_genre,
.calendarEvents td.category_type_venue {
  white-space: nowrap;
}

.calendarEvents td:not(.date) span {
  display: block;
}

/* イベント期間の最初と最後だけを表示 */
.calendarEvents td.date p {
  display: inline-block;
}

.calendarEvents td.date p span {
  display: none;
}

.calendarEvents td.date p:first-child .startDate,
.calendarEvents td.date p:first-child .from,
.calendarEvents td.date p:last-child .closeDate {
  display: inline-block;
}

.calendarEvents td.category_type_ticket,
.calendarEvents td.category_type_ticketnote {
  width: 6.1em;
}

div[id^="recentEvent"] .links {
  padding: 8px 16px;
  text-align: right;
}

div[id^="recentEvent"] .links .more {
  padding: 0;
}

.calendarEvents .holiday .title {
  display: none !important;
}

/* event-list
----------------------------------------------- */
.calendarMonthlyEvents td {
  padding: 6px 0;
  border: 0;
  border-bottom: 1px dotted #bbb;
}

.calendarMonthlyEvents tr:nth-child(odd) td,
.calendarMonthlyEvents tr:nth-child(even) td {
  background-color: transparent;
}

.calendarMonthlyEvents td:first-child {
  padding-left: 14px;
}

.calendarMonthlyEvents td:last-child {
  padding-right: 14px;
}

.calendarMonthlyEvents td.date {
  width: 19%;
}

.calendarMonthlyEvents td.date span {
  white-space: nowrap;
}

/*
.calendarMonthlyEvents td.date span:not(.closeDate) {
  display: inline-block;
}

.calendarMonthlyEvents td.date .closeDate {
  display: block;
}*/

@media only screen and (min-width: 601px) {
  .calendarEvents td {
    height: 6em;
  }

  .calendarEvents table a {
    display: block;
    max-height: 70px;
    overflow: hidden;
  }

  .calendarEvents td.image img,
  .calendarEvents td.image_link img {
    width: 60px;
  }

  .calendarMonthlyEvents td {
    height: auto;
  }

  .calendarMonthlyEvents table a {
    display: inline-block;
    max-height: 100%;
    overflow: visible;
  }
}

/* store
----------------------------------------------- */
.store .contentGpCategoryCategoryTypes {
  margin: 0 -1%;
  letter-spacing: -0.4em;
}

.store .contentGpCategoryCategoryTypes section {
  display: inline-block;
  width: 31.3%;
  margin: 0 1% 20px;
  padding: 115px 10px 10px;
  border: solid 1px #ccc;
  border-radius: 5px;
  background-position: center 10px;
  background-repeat: no-repeat;
  box-shadow: 1px 2px 2px #999;
  text-align: center;
  vertical-align: top;
  letter-spacing: normal;
}

@media only screen and (max-width: 600px) {
  .store .contentGpCategoryCategoryTypes {
    text-align: center;
  }

  .store .contentGpCategoryCategoryTypes section {
    width: 48%;
  }
}

.store .contentGpCategoryCategoryTypes section.gallery {
  background-image: url("./images/cvr_gallery.jpg");
}

.store .contentGpCategoryCategoryTypes section.studio {
  background-image: url("./images/cvr_studio.jpg");
}

.store .contentGpCategoryCategoryTypes section.jiro {
  background-image: url("./images/cvr_jiro.jpg");
}

.store .contentGpCategoryCategoryTypes section.yuzo {
  background-image: url("./images/cvr_yuzo.jpg");
}

.store .contentGpCategoryCategoryTypes section.dazai {
  background-image: url("./images/cvr_dazai.jpg");
}

.store .contentGpCategoryCategoryTypes section.postcard {
  background-image: url("./images/cvr_postcard.jpg");
}

.store .contentGpCategoryCategoryTypes section.phonecard {
  background-image: url("./images/cvr_telephone.jpg");
}

.store .contentGpCategoryCategoryTypes>section>h2,
.store .contentGpCategoryCategoryTypes>section>a {
  display: block;
  margin-bottom: 10px;
}

.store .contentGpCategoryCategoryTypes>section a>h2 {
  margin-bottom: 0;
}

.store .contentGpCategoryCategoryTypes>section a h2::before,
.store .contentGpCategoryCategoryTypes>section>h2 a::before {
  content: "- ";
}

.store .contentGpCategoryCategoryTypes>section a h2::after,
.store .contentGpCategoryCategoryTypes>section>h2 a::after {
  content: " -";
}

.store .contentGpCategoryCategoryTypes>section>a,
.store .contentGpCategoryCategoryTypes>section>h2 a {
  display: inline-block;
  padding: 0;
  border: 0;
  color: #000;
}

.store .contentGpCategoryCategoryTypes>section>a:hover,
.store .contentGpCategoryCategoryTypes>section>h2 a:hover {
  color: #063;
  background-color: #cfe;
  text-decoration: underline;
}

.store .contentGpCategoryCategoryTypes li {
  line-height: 1.3;
  border-bottom: solid 1px #8ca;
}

.store .contentGpCategoryCategoryTypes li a {
  display: block;
  padding: 5px 4px 4px 5px;
  color: #048;
  text-align: left;
  text-decoration: none;
}

.store .contentGpCategoryCategoryTypes li a:hover {
  background-color: #ced;
  color: #063;
  text-decoration: underline;
}

.store .contentGpCategoryCategoryType li,
.store .contentGpCategoryCategory li,
.store .contentGpArticleDocs li {
  padding: 10px 0;
  border-bottom: 1px solid #bbb;
}

.store .contentGpArticleDoc .date {
  display: none;
}

.store .title_link {
  display: block;
  margin-bottom: 10px;
}

.store .title_link a {
  display: inline-block;
  padding: 0;
  border: 0;
  color: #000;
  text-decoration: none;
}

.store .title_link a:hover {
  color: #063;
  background-color: #ced;
  text-decoration: underline;
}

.store .docs li>.title_link {
  display: none;
}

.store .num {
  margin-bottom: 0;
  color: #798;
  font-weight: bold;
}

.store a.doc_link {
  color: inherit;
  text-decoration: none;
}

.store .go {
  display: none;
}

.store .body p {
  padding: 0;
}

.store .go a {
  padding-left: 18px;
  background: url("./images/bl_next.gif") no-repeat left center;
}

.store .go a:hover {
  background-image: url("./images/gr_next.gif");
}

.store .go a img {
  display: none;
}

.store input {
  vertical-align: baseline;
}

.store input[type="text"] {
  max-width: 4.8em;
}

.store .body h2 {
  padding: 0;
  border: 0;
}

/* liではなくbodyをflexコンテナにする。bodyがspanからdivに変更された影響（2024/11/18）*/
.store .contentGpCategoryCategoryType li .body,
.store .contentGpCategoryCategory li .body,
.store .contentGpArticleDocs li .body,
.store .contentGpArticleDoc .text-beginning {
  display: flex;
  align-items: flex-start;
}

.store .contentGpArticleDoc .text-beginning>div:first-child,
.store .cart {
  white-space: nowrap;
  text-align: center;
}

.store .cart {
  position: relative;
  z-index: 10;
}

.store .contentGpCategoryCategoryType li img:not(.external):not(.spacer),
.store .contentGpCategoryCategory li img:not(.external):not(.spacer),
.store .contentGpArticleDocs li img:not(.external):not(.spacer),
.store .contentGpArticleDoc .text-beginning img:not(.external):not(.spacer) {
  margin-bottom: 10px;
  box-shadow: 1px 1px 2px #999;
}

.dir-zaidan-store-docs-2017022100371 .store .contentGpArticleDoc .text-beginning img:not(.external):not(.spacer),
.dir-zaidan-store-docs-2017022100364 .store .contentGpArticleDoc .text-beginning img:not(.external):not(.spacer) {
  box-shadow: none;
}

.store .clear {
  display: none;
}

@media only screen and (min-width: 600px) {

  .store .contentGpArticleDoc .thumbnail,
  .store .contentGpArticleDoc .wide {
    flex-basis: 320px;
  }

  .store .contentGpArticleDoc .entry,
  .store .contentGpArticleDoc .entry-w {
    flex-basis: calc(100% - 340px);
  }

  .store .docs li {
    display: flex;
    flex-wrap: wrap;
  }

  .store .docs li>.image {
    flex-basis: 160px;
  }

  .store .docs li>.body .thumbnail,
  .store .docs li>.body .telephone,
  .store .docs li>.body .wide {
    flex-basis: 160px;
    margin-right: 20px;
  }

  .store .contentGpArticleDoc .thumbnail,
  .store .contentGpArticleDoc .telephone,
  .store .contentGpArticleDoc .wide {
    margin-right: 20px;
  }

  .store .contentGpCategoryCategoryType li.wide>a:last-child>.body,
  .store .contentGpCategoryCategory li.wide>a:last-child>.body,
  .store .contentGpArticleDocs li.wide>a:last-child>.body {
    flex-wrap: wrap;
  }

  .store .contentGpCategoryCategoryType li div:first-child img:not(.external):not(.spacer),
  .store .contentGpCategoryCategory li div:first-child img:not(.external):not(.spacer),
  .store .contentGpArticleDocs li div:first-child img:not(.external):not(.spacer) {
    width: 160px;
  }

  .store .docs li .body .entry {
    flex-basis: calc(100% - 185px);
  }

  .store .contentGpCategoryCategoryType li.cart-wide>a:last-child>.body>div.wide+div,
  .store .contentGpCategoryCategory li.cart-wide>a:last-child>.body>div.wide+div,
  .store .contentGpArticleDocs li.cart-wide>a:last-child>.body>div.wide+div {
    width: 100%;
  }
}

@media only screen and (max-width: 600px) {

  .store .contentGpCategoryCategoryType li .body,
  .store .contentGpCategoryCategory li .body,
  .store .contentGpArticleDocs li .body,
  .store .contentGpArticleDoc .text-beginning {
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }

  .store .docs li>.body .thumbnail,
  .store .docs li>.body .telephone,
  .store .docs li>.body .wide {
    margin: 0 0 15px;
  }

  .store .contentGpCategoryCategoryType p,
  .store .contentGpCategoryCategory p,
  .store .contentGpArticleDocs p,
  .store .contentGpArticleDoc .text-beginning p {
    display: inline-block;
    text-align: left;
  }

  .store .contentGpCategoryCategoryType .data p,
  .store .contentGpCategoryCategory .data p,
  .store .contentGpArticleDocs .data p,
  .store .contentGpArticleDoc .text-beginning .data p {
    margin-bottom: 10px;
  }

  .pagination {
    margin-bottom: 20px;
  }
}

/* marcl image
----------------------------------------------- */
#marcl .pieceContainer {
  display: inline-block;
  text-align: center;
  padding-left: 35px;
}

#marcl h2 {
  font-weight: normal;
}

/* responsive table
----------------------------------------------- */
@media only screen and (max-width: 600px) {

  .calendarEvents tr,
  .body tr {
    display: block;
    padding: 5px 12px;
    border-bottom: 1px dashed #666;
  }

  .calendarEvents tbody tr:last-child,
  .body tbody tr:last-child {
    border-bottom: 0;
  }

  .calendarEvents th,
  .calendarEvents td,
  .body th,
  .body td {
    width: auto !important;
    padding: 5px !important;
    border: 0;
    text-align: left;
    white-space: normal;
  }

  .calendarEvents th,
  .body th {
    display: inline-block;
    margin: 0 0 4px;
    white-space: normal;
  }

  .calendarEvents td,
  .body td {
    display: block;
    text-align: left !important;
  }

  .calendarEvents tr:nth-child(odd) td,
  .calendarEvents tr:nth-child(even) td {
    background-color: transparent;
  }

  .calendarEvents td.date {
    width: auto;
  }

  .calendarEvents th:empty,
  .calendarEvents td:empty,
  .body th:empty,
  .body td:empty {
    display: none;
  }

  .body td input {
    display: inline !important;
    margin: 0 !important;
  }

  div[id^="recentEvent"] .links {
    text-align: center;
  }

  div[id^="recentEvent"] .links a {
    display: block;
  }
}

@media only screen and (max-width: 600px) and (orientation:portrait) {
  .hide-sp {
    display: none;
  }
}

/* =========================================================
   event template
========================================================= */
#event_tiltle {
  font-size: 150%;
  border: none;
  margin: 0;
  padding: 0px;
}

#event .temp_event1 {
  margin-top: 30px;
}

.display .temp_event1 {
  margin-top: 12px !important;
}

#event #subtitle-down {
  font-size: 100%;
  font-family: Georgia, 'Hiragino Mincho ProNYu', 'Mincho', serif;
  font-weight: bold;
  padding: 0;
}

#event #subtitle-up {
  margin-bottom: 0px;
  font-size: 100%;
  font-weight: bold;
  padding: 0;
}

#bg_line {
  margin-bottom: 30px;
}

#bg_line_display {
  margin-bottom: 27px;
}

#bg_line_common {
  margin-bottom: 40px;
}

@media only screen and (min-width: 600px) {
  #event div .thumb {
    max-width: 28%;
    margin-top: 6px
  }
}

.display div .thumb {
  margin-top: 2px !important;
}

#event div div dd {
  font-size: 85%;
}

/*#event div:not(.temp_event1) div img:not(.spacer) {
  border: 1px #ccc solid;
}*/

#right_contents {
  font-weight: bold;
  font-size: 105%;
}

#up_contents {
  font-weight: bold;
  font-size: 105%;
  margin: 20px 0 0 0;
}

#right_contents p+br,
#up_contents p+br {
  display: none;
}

table.event_table {
  width: 100%;
  border: 1px #fff solid;
}

table.event_table th {
  border: 2px #fff solid;
  background-color: #999;
  color: #fff;
}

table.event_table td {
  border: 2px #fff solid;
  background-color: #e4e4e4;
}

table.event_table td span.red {
  color: #FF0000;
  display: block;
  float: left;
}

#event .temp4 {
  margin: 40px 0 40px 0;
  text-align: left;
}

#event .temp4 dd {
  font-size: 85%;
}

.temp_event1::after {
  content: "";
  clear: both;
  display: block;
}

.temp_event1,
.temp_event2 {
  margin-bottom: 20px;
}

@media only screen and (min-width: 600px) {
  .temp_event1 .thumb {
    float: left;
    margin: 0 2% 10px 0;
  }

  .temp_event1 .thumb+div {
    float: left;
  }
}

.temp_event1 ul,
.temp_event1 ol {
  display: inline-block;
  vertical-align: top;
}

.temp_event2,
  {
  text-align: center;
  letter-spacing: -0.4em;
}

.temp_event2 dl {
  display: inline-block;
  margin: 0 1%;
  vertical-align: bottom;
  letter-spacing: normal;
}

.temp_event2 dl {
  max-width: 32%;
}

.temp_event2 dl:first-child {
  margin-left: 0;
}

.temp_event2 dl:last-child {
  margin-right: 0;
}

.temp_event2 dl dt {
  margin-bottom: 10px;
  text-align: center;
}

.temp_event2 dl dd {
  text-align: center;
}

@media only screen and (max-width: 1200px) {
  .temp_event2 dl {
    max-width: 31.5%;
  }
}

@media only screen and (max-width: 600px) {

  .temp_event1 .thumb,
  .temp_event1 .thumb+div {
    float: none;
    margin: 0 0 10px;
  }

  .temp_event2 dl,
  .temp_event2 dl:first-child,
  .temp_event2 dl:last-child {
    max-width: 100%;
    margin: 0 1% 2%;
  }
}

.temp_event2 dl dd {
  font-size: 85%;
}

#event .ticket p {
  margin-bottom: 0px;
  float: left;
}

.temp_event1 p {
  margin: 0;
  padding: 0;
}

.block {
  display: block;
}

@media only screen and (min-width: 600px) {
  #display {
    max-width: 70%;
  }

  .temp_event1_text {
    width: 70%;
  }
}

/* =========================================================
   indent
========================================================= */
.left_1 {
  padding-left: 1em;
}

.left_2 {
  padding-left: 2em;
}

.left_3 {
  padding-left: 3em;
}

.left_4 {
  padding-left: 4em;
}

.left_5 {
  padding-left: 5em;
}

.left_6 {
  padding-left: 6em;
}

.left_7 {
  padding-left: 7em;
}

.left_8 {
  padding-left: 8em;
}

.left_9 {
  padding-left: 9em;
}

.left_10 {
  padding-left: 10em;
}

.left_11 {
  padding-left: 11em;
}